Đáp án và lời giải
Giải SBT Tin học 11 KNTT Bài 22. Thực hành bài toán sắp xếp có đáp án
Câu 1
Hướng dẫn chấm do TopStudy biên soạn, mang tính gợi ý
Câu 2
Hướng dẫn chấm do TopStudy biên soạn, mang tính gợi ý
Câu 3
Hướng dẫn chấm do TopStudy biên soạn, mang tính gợi ý
Câu 4
Hướng dẫn chấm do TopStudy biên soạn, mang tính gợi ý
Câu 5
Hướng dẫn chấm do TopStudy biên soạn, mang tính gợi ý
Câu 6
Hướng dẫn chấm do TopStudy biên soạn, mang tính gợi ý
Câu 7
Hướng dẫn chấm do TopStudy biên soạn, mang tính gợi ý
Câu 8
Hướng dẫn chấm do TopStudy biên soạn, mang tính gợi ý
Câu 9
Hướng dẫn chấm do TopStudy biên soạn, mang tính gợi ý
Kết quả danh sách lớp sau hai bước lặp với các thuật toán sắp xếp như sau:
– Thuật toán sắp xếp chèn
B1: An, Nam, Cường, Sơn, Trung, Bình
B2: An, Cường, Nam, Sơn, Trung, Bình
B3: An, Cường, Nam, Sơn, Trung, Bình
B4: An, Cường, Nam, Sơn, Trung, Bình
B5: An, Bình, Cường, Nam, Sơn, Trung
– Thuật toán sắp xếp chọn
B1: An, Nam, Cường, Sơn, Trung, Bình
B2: An, Bình, Cường, Sơn, Trung, Nam
B3: An, Bình, Cường, Sơn, Trung, Nam
B4: An, Bình, Cường, Nam, Sơn, Trung
B5: An, Bình, Cường, Nam, Sơn, Trung
– Thuật toán sắp xếp nổi bọt
B1: An, Nam, Cường, Sơn, Trung, Bình
An, Nam, Cường, Sơn, Bình, Trung
B2: An, Nam, Cường, Bình, Sơn, Trung
B3: An, Nam, Bình, Cường, Sơn, Trung
B4: An, Bình, Nam, Cường, Sơn, Trung
B5: An, Bình, Cường, Nam, Sơn, Trung
Câu 10
Hướng dẫn chấm do TopStudy biên soạn, mang tính gợi ý
Như đã phân tích ở Câu 22.2, thuật toán sắp xếp phù hợp nhất cho bài toán này là thuật toán sắp xếp chèn. Bài toán này có thể giải như sau:

Câu 11
Hướng dẫn chấm do TopStudy biên soạn, mang tính gợi ý
Một số ưu điểm/nhược điểm của ba cách sắp xếp như sau:
Cách 1: Nếu khách chọn “tăng dần” thì thực hiện đoạn chương trình sắp xếp tăng dần; nếu chọn “giảm dần” thì thực hiện chương trình sắp xếp giảm dần. Ưu điểm của phương án này là không làm gia tăng số lượng các phép toán cần thực hiện, tuy nhiên người dùng phải viết riêng hai chương trình, một cho lựa chọn “tăng dần”, một cho lựa chọn “giảm dần”.
Cách 2: Sử dụng kết hợp câu lệnh IF trước khi thực hiện so sánh “lớn hơn” hay “nhỏ hơn” trong vòng lặp sắp xếp.
Ưu điểm của phương án này là không cần phải viết riêng hai chương trình cho hai lựa chọn sắp xếp. Tuy nhiên, phương pháp này chúng ta cần phải thực hiện khá nhiều lệnh kiểm tra điều kiện IF trước khi thực hiện lệnh so sánh “lớn hơn” hay “nhỏ hơn”.
Cách 3: Nếu khách hàng lựa chọn sắp xếp “giảm dần” thì lấy toàn bộ các phần tử của dãy nhân với -1, sau đó vẫn áp dụng thuật toán sắp xếp tăng dần. Ưu điểm của phương án này là không phải thay đổi chương trình sắp xếp, tuy nhiên sẽ làm gia tăng số lượng phép toán do phải nhân toàn bộ dữ liệu với -1. Ngoài 3 cách trên, chúng ta còn có thể sử dụng một cách khác là vẫn sắp xếp dữ liệu theo thứ tự tăng dần như bình thường. Nếu người dùng chọn “tăng dần” thì khi hiển thị dữ liệu ra theo thứ tự từ đầu dãy đến cuối dãy, nếu người dùng chọn “giảm dần” thì hiển thị dữ liệu theo thứ tự từ cuối dãy đến đầu dãy.