Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (549.33 KB, 4 trang )
Bài 16: Thuật toán sắp xếp
1. Thuật toán sắp xếp nổi bọt
- Sắp xếp nổi bọt là hoán đổi nhiều lần các phần tử liền kề nếu giá trị của chúng không
đúng thứ tự.
- Mô tả bằng ngôn ngữ tự nhiên:
1. Với phần tử đầu tiên, thực hiện vòng lặp:
1.1. So sánh hai phần tử đứng cạnh nhau theo thứ tự từ cuối dãy lên phần tử đầu tiên.
1.2. Nếu phần tử đứng sau nhỏ hơn phần tử đứng trước thì đổi chỗ chúng cho nhau.
1.3. Cuối vịng lặp em sẽ nhận được một dãy số với phần tử nhỏ nhất nổi lên vị trí đầu
tiên.
2. Với phần tử thứ hai, thực hiện vòng lặp như trên:
2.1. So sánh hai phần tử đứng cạnh nhau theo thứ tự từ cuối dãy lên phần tử đầu tiên.
2.2. Nếu phần tử đứng sau nhỏ hơn phần tử đứng trước thì đổi chỗ chúng cho nhau.
2.3. Cuối vòng lặp em sẽ nhận được một dãy số với phần tử nhỏ thứ nhì nổi lên vị trí
thứ hai.
3. Tương tự với các phần tử còn lại
4. Kết thúc thu được dãy số sắp xếp theo thứ tự tăng dần
- Ví dụ
Đầu vào
Xét vị trí đầu tiên, vòng lặp thứ nhất:
Hình 1. Vịng lặp thứ nhất
Xét vị trí thứ hai
Hình 2. Vịng lặp thứ hai
Xét vị trí thứ 3
Hình 3. Vịng lặp thứ 3
Sau vịng lặp thứ 3, khơng có sự hoán đổi nào nữa nên kết thúc thuật toán