Bài tập  /  Bài đang cần trả lời

Liệt kê các vòng lặp của thuật toán sắp xếp nổi bọt, thuật toán sắp xếp chọn để sắp xếp các dãy sau theo thứ tự tăng dần: a) Dãy số: 9, 6, 11, 3, 7. b) Dãy chữ cái: H, D, A, B, Y.

Liệt kê các vòng lặp của thuật toán sắp xếp nổi bọt, thuật toán sắp xếp chọn để sắp xếp các dãy sau theo thứ tự tăng dần:

a) Dãy số: 9, 6, 11, 3, 7.

b) Dãy chữ cái: H, D, A, B, Y.

1 Xem trả lời
Hỏi chi tiết
19
0
0
Phạm Minh Trí
12/09 21:13:34

a) Dãy số tăng dần:

- Thuật toán nổi bọt:

Vòng lặp 1:

Bước 1. So sánh số 9 và 6 (9 > 6). Nên đổi chỗ vị trí số 9 và số 6, dãy số sau khi đổi vị trí: 6, 9, 11, 3, 7.

Bước 2. So sánh số 9 và 11 (11 > 9). Nên giữ nguyên.

Bước 3. So sánh số 11 và 3 (11 > 3). Nên đổi chỗ vị trí số 11 và số 3, dãy số sau khi đổi vị trí: 6, 9, 3, 11, 7.

Bước 4. So sánh số 11 và 7 (11 > 7). Nên đổi chỗ vị trí số 11 và số 7, dãy số sau khi đổi vị trí: 6, 9, 3, 7, 11.

Vòng lặp 2:

Bước 5. So sánh số 6 và 9 (9 > 6). Giữ nguyên vị trí, dãy số hiện có 6, 9, 3, 7, 11.

Bước 6. So sánh số 9 và 3 (9 > 3). Nên đổi chỗ vị trí số 9 và số 3, dãy số sau khi đổi vị trí: 6, 3, 9, 7, 11.

Bước 7. So sánh số 9 và 7 (9 > 7). Nên đổi chỗ vị trí số 9 và số 7, dãy số sau khi đổi vị trí: 6, 3, 7, 9, 11.

Bước 8. So sánh số 9 và 11 (11 > 9). Giữ nguyên vị trí, dãy số hiện có 6, 3, 7, 9, 11.

 Vòng lặp 3:

Bước 9. So sánh số 6 và 3 (6 > 3). Nên đổi chỗ vị trí số 6 và số 3, dãy số sau khi đổi vị trí: 3, 6, 7, 9, 11. Ta thấy dãy số đã được sắp xếp đúng theo thứ tự tăng dần, nên kết thúc thuật toán.

⇒ Có 3 vòng lặp được thực hiện khi sắp xếp.

- Thuật toán sắp xếp chọn:

Bước 1. Chọn số 9 so sánh với những số trong dãy, thấy số 3 là số nhỏ nhất nên đổi chỗ số 9 và số 3. Dãy số sau khi đổi vị trí: 3, 6, 11, 9, 7.

Bước 2. Chọn số 6 so sánh với những số trong dãy, thấy số 6 là số nhỏ nhất và sắp xếp đúng vị trí nên ta giữ nguyên. Dãy số ta được: 3, 6, 11, 9, 7.

Bước 3. Chọn số 11 so sánh với những số trong dãy, thấy số 7 là số nhỏ nhất nên đổi chỗ số 11 và số 7. Dãy số sau khi đổi vị trí: 3, 6, 7, 9, 11.

Bước 4. Chọn số 9 so sánh với những số trong dãy, thấy số 9 là số nhỏ nhất và sắp xếp đúng vị trí nên ta giữ nguyên. Dãy số ta được: 3, 6, 7, 9, 11. Ta kiểm tra thấy dãy số đã được sắp xếp theo thứ tự tăng dần. Kết thúc thuật toán.

Thực hiện 4 vòng lặp là có thể sắp xếp số theo đúng vị trí.

  b) Dãy chữ cái: H, D, A, B, Y.

- Sắp xếp nổi bọt: (Theo bảng chữ cái).

Vòng lặp 1:

Bước 1. So sánh chữ H và D (H > D). Nên đổi chỗ vị trí chữ H và chữ D, dãy chữ cái sau khi đổi vị trí: D, H, A, B, Y.

Bước 2. So sánh chữ H và A (H > A). Nên đổi chỗ vị trí chữ H và chữ A, dãy chữ cái sau khi đổi vị trí: D, A, H, B, Y.

Bước 3. So sánh chữ H và B ( H > B). Nên đổi chỗ vị trí chữ H và chữ B, dãy chữ cái sau khi đổi vị trí: D, A, B, H, Y.

Bước 4. So sánh chữ H và Y ( Y > H). Nên giữ nguyên vị trí, dãy chữ cái: D, A, B, H, Y.

Vòng lặp 2:

Bước 5. So sánh chữ D và A (D > A). Nên đổi chỗ vị trí chữ D và chữ B, dãy chữ cái sau khi đổi vị trí: A, D, B, H, Y.

Bước 6. So sánh chữ D và B (D > B). Nên đổi chỗ vị trí chữ D và chữ B, dãy chữ cái sau khi đổi vị trí: A, B, D, H, Y.

Bước 7. So sánh chữ D và H (H > D). Nên giữ nguyên vị trí, dãy chữ cái sắp xếp: A, B, D, H, Y.

Bước 8. So sánh chữ H và Y (H < Y). Nên giữ nguyên vị trí, dãy chữ cái sắp xếp: A, B, D, H, Y. Ta thấy dãy chữ cái đã được sắp xếp theo thứ tự. Kết thúc thuật toán.

Sử dụng 2 vòng lặp khi thực hiện bài toán tìm kiếm nổi bọt.

- Sắp xếp chọn:

Bước 1. Chọn chữ H so sánh với những chữ khác trong dãy, thấy chữ A là chữ nhỏ nhất nên đổi chỗ chữ H và chữ A. Dãy chữ sau khi đổi vị trí: A, D, H, B, Y.

Bước 2. Chọn chữ D so sánh với những chữ khác trong dãy, thấy chữ B là chữ nhỏ nhất nên đổi chỗ chữ D và chữ B. Dãy chữ sau khi đổi vị trí: A, B, H, D, Y.

Bước 3. Chọn chữ H so sánh với những chữ khác trong dãy, thấy chữ D là chữ nhỏ nhất nên đổi chỗ chữ H và chữ D. Dãy chữ sau khi đổi vị trí: A, B, D, H, Y. Khi đó ta thấy dãy chữ cái đã được sắp xếp theo đúng thứ tự. Kết thúc thuật toán.

⇒ Sau 3 vòng lặp thực hiện xong bài toán tìm kiếm sắp xếp chọn.

Mở khóa để xem toàn bộ nội dung trả lời

(?)
Bạn đã đạt đến giới hạn của mình. Bằng cách Đăng ký tài khoản, bạn có thể xem toàn bộ nội dung trả lời
Cải thiện điểm số của bạn bằng cách đăng ký tài khoản Lazi.
Xem toàn bộ các câu trả lời, chat trực tiếp 1:1 với đội ngũ Gia sư Lazi bằng cách Đăng nhập tài khoản ngay bây giờ
Tôi đã có tài khoản? Đăng nhập

Bạn hỏi - Lazi trả lời

Bạn muốn biết điều gì?

GỬI CÂU HỎI
Học tập không giới hạn cùng học sinh cả nước và AI, sôi động, tích cực, trải nghiệm
Câu hỏi liên quan

Hôm nay bạn thế nào? Hãy nhấp vào một lựa chọn, nếu may mắn bạn sẽ được tặng 50.000 xu từ Lazi

Vui Buồn Bình thường
×
Trợ lý ảo Trợ lý ảo
×
Đấu trường tri thức | Lazi Quiz Challenge +500k
Gửi câu hỏi
×