
Anonymous
0
0
Lý thuyết Tin Học 7 Bài 4 (Cánh diều): Sắp xếp nổi bọt
- asked 4 months agoVotes
0Answers
0Views
Lý thuyết Tin Học 7 Bài 4: Sắp xếp nổi bọt
1. Ý tưởng sắp xếp bằng cách đổi chỗ các phần tử liền kề
Ví dụ: Cho dãy 5 hộp kẹo với số lượng kẹo trong mỗi hộp khác nhau, tương ứng là:
Hình 4.1: Mô phỏng sắp xếp bằng đổi chỗ các phần tử liền kề
2. Thuật toán sắp xếp nổi bọt
Trong ví dụ trên, robot thực hiện số lượt di chuyển từ đầu đến cuối dãy để so sánh và đổi chỗ các cặp phần tử liền kề nếu chưa đúng thứ tự.
Ở mỗi lượt, robot thực hiện:
- Xuất phát từ đầu dãy, i = 1, xét cặp (a1, a2), nếu a1 > a2 (trái thứ tự mong muốn) thì đổi chỗ cho nhau; trái lại không cần làm gì.
- Dịch sang phải một vị trí, xét cặp (a2, a3); so sánh và đổi chỗ nếu cần.
- Quá trình tiếp tục, dịch sang phải một vị trí, xét cặp (ai+1, ai+2), so sánh và đổi chỗ nếu cần thiết.
- Khi hết dãy thì xong một lượt xét các cặp số kề nhau để đổi chỗ.
Nếu dãy chưa được sắp xếp đúng thứ tự thì trong dãy sẽ còn cặp phần tử liền kề không đúng thứ tự. Như vậy robot sẽ phải thực hiện cho đến khi không còn cặp liền kề (ai, ai+1) trái mong muốn nữa.