Lời giải SBT Tin học lớp 7 Bài 16: Thuật toán sắp xếp sách Kết nối tri thức hay, ngắn gọn sẽ giúp học sinh dễ dàng trả lời câu hỏi Tin học 7 Bài 16 từ đó học tốt môn Tin 7.
Giải sách bài tập Tin học lớp 7 Bài 16: Thuật toán sắp xếp
a) Đổ chất lỏng từ cốc B sang cốc A.
b) Đổ chất lỏng từ cốc C sang cốc B.
c) Đổ chất lỏng từ cốc A sang cốc C.
Lời giải:
Các bước: c → a → b
A. Nổi bọt B. Chọn
Lời giải:
Đáp án đúng là: A
Hoán đổi hai vị trí hai phần tử liên tiếp khi chúng không đúng thứ tự là cách sắp xếp của thuật toán nổi bọt.
A. Nổi bọt B. Chọn
Lời giải:
Đáp án đúng là: B
Tìm phần tử nhỏ nhất trong dãy và đổi chỗ phần tử này với phần tử đầu tiên của dãy chưa được sắp xếp là ý tưởng của thuật toán chọn.
A. Nhỏ nhất trong dãy số
B. Lớn nhất trong dãy số
C. Không thay đổi
D. Bằng nửa giá trị của phần tử liền trước.
Lời giải:
Đáp án đúng là: A
Kết thúc vòng lặp thứ nhất, phần tử đầu tiên sẽ có giá trị: Nhỏ nhất trong dãy số
A. Phần tử có giá trị nhỏ nhất trong dãy được tìm thấy và đổi chỗ cho phần tử đứng đầu dãy.
B. Phần tử có giá trị lớn nhất trong dãy được tìm thấy và đổi chỗ cho phần tử đứng đầu dãy.
C. Các phần tử liền kề được hoán đổi.
D. Phần tử có giá trị nhỏ nhất sẽ đổi vị trí cho phần tử cuối dãy.
Lời giải:
Đáp án đúng là: A
Phần tử có giá trị nhỏ nhất trong dãy được tìm thấy và đổi chỗ cho phần tử đứng đầu dãy.
Câu 16.6 trang 56 SBT Tin học 7: Các nhiệm vụ để thực hiện sắp xếp gồm:
A. So sánh
B. Đổi chỗ
C. So sánh và đổi chỗ
D. Đổi chỗ và xóa
Lời giải:
Đáp án đúng là: C
Các nhiệm vụ để thực hiện sắp xếp gồm: So sánh và đổi chỗ.
Câu 16.7 trang 56 SBT Tin học 7: Cho một dãy các quân bài như sau:
Bạn An sắp xếp các quân bài bằng cách tráo đổi vị trí theo các vòng lặp như trong các hình sau:
a) Em hãy cho biết biện An dùng thuật toán nào để sắp xếp?
b) Em hãy mô phỏng lại thuật toán trên với các quân bài trong Hình 16.5
Lời giải:
a) An sắp xếp theo thuật toán sắp xếp nổi bọt.
b) Mô phỏng thuật toán sắp xếp nổi bọt với các quân bài.
Vòng lặp thứ nhất: So sánh quân 6 và quân 9, vì 9 > 6 không đúng thứ tự nên quân 6 đồi chỗ cho quân 9. So sánh quân 6 với quân 10, vì 10 > 6 không đúng thứ tự nên quân 6 đổi chỗ cho quân 10. So sánh tiếp quân 6 với quân 4, vì 4 < 6 đúng thứ tự nên giữ nguyên vị trí. Kết thúc vòng lặp thứ tự các quân bài như sau: Quân 4, quân 6, quân 10, quân 9.
Vòng lặp thứ hai: So sách quân 9 với quân 10, Vì 10 > 9 không đúng thứ tự nên quân 9 đổi chỗ cho quân 10. So sánh quân 9 với quân 6, vì 6 < 9 đúng thứ tự nên giữ nguyên vị trí. Kết thúc vòng lặp thứ tự các quân bài như sau: Quân 4, quân 6, quân 9, quân 10.
Vòng lặp thứ ba: So sánh quân 10 với quân 9, vì 9 < 10 đúng thứ tự nên giữ nguyên vị trí. Vậy dãy đã được sắp xếp.
A. 2
B. 3
C. 4
D. 5
Lời giải:
Đáp án đúng là: A
Nếu sử dụng thuật toán sắp xếp chọn để sắp xếp dãy số 8, 22, 7, 19, 5 theo thứ tự tăng dần thì số lần thực hiện thao tác hoán đổi giá trị trong vòng lặp thứ nhất là: 2.
8 < 22 nên không hoán đổi.
8 > 7 nên hoán đổi vị trí. Dãy: 7, 22, 8, 19, 5
7 < 19 nên không hoán đổi.
7 > 5 nên hoán đổi vị trí. Dãy: 5, 22, 8, 19, 7.
A. 15, 20, 10, 18 → 10, 15, 18, 20 →10, 15, 18, 20
B. 15, 20, 10, 18 → 10, 20, 15, 18 → 10, 15, 20, 18 → 10, 15, 18, 20.
C. 15, 20, 10, 18 → 15, 10, 20, 18 → 10, 15, 18, 20.
D. 15, 20, 10, 18 → 10, 15, 20, 18 → 10, 15, 18, 20.
Lời giải:
Đáp án đúng là: D
15, 20, 10, 18 → 10, 15, 20, 18 → 10, 15, 18, 20.
Lời giải:
Mô phỏng các bước sắp xếp dãy số 83, 5, 8, 12, 65, 72, 71 theo thuật toán nổi bọt:
Vòng lặp 1: 83, 5, 8, 12, 65, 72, 71 → 5, 83, 8, 12, 65, 71, 72.
Vòng lặp 2: 5, 83, 8, 12, 65, 71, 72 → 5, 8, 83, 12, 65, 71, 72.
Vòng lặp 3: 5, 8, 83, 12, 65, 71, 72 → 5, 8, 12, 83, 65, 71, 72.
Vòng lặp 4: 5, 8, 12, 83, 65, 71, 72 → 5, 8, 12, 65, 83, 71, 72.
Vòng lặp 5: 5, 8, 12, 65, 83, 71, 72 → 5, 8, 12, 65, 71, 83, 72.
Vòng lặp 6: 5, 8, 12, 65, 71, 83, 72 → 5, 8, 12, 65, 71, 72, 83.
Sau 6 vòng lặp thì dãy số mới được sắp xếp đúng theo yêu cầu.
Vòng lặp thứ nhất:
Vòng lặp thứ hai:
Vòng lặp thứ ba:
Vòng lặp thứ tư:
Lời giải:
Hình 16.6 sử dụng cách sắp xếp theo thuật toán sắp xếp chọn.
An: Tớ chọn que ngắn nhất rồi đổi vị trí với que ở vị trí đầu tiên. Tiếp tục chọn các que ngắn nhất trong các que chưa được xếp và sắp xếp chúng lần lượt vào các vị trí thứ hai, thứ ba, ...
Khoa: Tớ cầm que cuối cùng, nếu que trước ngắn hơn tớ sẽ chuyển sang cầm que ngắn, ngược lại nếu que trước dài hơn tớ sẽ đổi vị trí hai que tính. Lần lượt làm như vậy đến que tính đầu tiên. Sau lượt đầu, que tính ngắn nhất sẽ được đưa về vị trí đầu tiên. Ở lượt thứ hai, que tính ngắn thứ hai sẽ được đưa đúng vào vị trí, cứ như vậy đến khi các que tính được sắp xếp theo đúng thứ tự.
a) Em hãy cho biết bạn An và Khoa dùng thuật toán gì để sắp xếp?
b) Em hãy thực hiện theo cách của An và Khoa để sắp xếp các que tính trong Hình 16.7 theo thứ tự từ ngắn đến dài. Theo em, cách sắp xếp của bạn nào nhanh hơn?
Lời giải:
a) An dùng thuật toán sắp xếp chọn, Khoa dùng thuật toán sắp nổi bọt.
b) Theo cách của An:
Theo cách của Khoa:
⇒ Vậy cách sắp xếp của An nhanh hơn cách sắp xếp của Khoa.
Lời giải:
Vòng lặp thứ nhất: Em gái là người thấp nhất nên đổi chỗ em gái với bố. Thứ tự mới bây giờ là em gái, bố, mẹ, Hải.
Vòng lặp thứ hai: Hải là người thấp nhất trong dãy còn lại nên Hải đổi chỗ với bộ, Thứ tự mới bây giờ là em gái, Hải, mẹ, bố.
Vòng lặp thứ ba: Mẹ ở đúng vị trí nên thứ tự sắp xếp đã đúng.
a) Em hãy cho biết dãy số được sắp xếp theo thuật toán nào?
b) Em hãy sắp xếp dãy số ban đầu theo thuật toán khác mà em đã được học. So sánh các sắp xếp của thuật toán nào nhanh hơn?
Lời giải:
a) Dãy số đã được sắp xếp theo thuật toán sắp xếp chọn.
b) Dãy số có thể sắp xếp theo thuật toán nổi bọt như sau:
Vòng lặp thứ nhất:
Vòng lặp thứ hai:
Vòng lặp thứ ba:
Vòng lặp thứ tư:
Vòng lặp thứ năm:
Vậy thuật toán sắp xếp nổi bọt sẽ cần 5 vòng lặp, trong khi đó sắp xếp theo theo thuật toán chọn sẽ cần 8 vòng lặp. Vậy thuật toán nổi bọt trong trường hợp này nhanh hơn.
Câu 16.15 trang 61 SBT Tin học 7: Điểm môn Tin học của tổ một lớp 7A được ghi trong bảng sau:
Em hãy sắp xếp lại danh sách theo thứ tự tăng dần của điểm bằng cách dùng thuật toán sắp xếp nổi bọt và sắp xếp chọn.
Lời giải:
Kết quả các vòng thực hiện sắp xếp nổi bọt để sắp xếp điểm theo thứ tự tăng dần:
Kết quả các vòng lặp thực hiện sắp xếp chọn để sắp xếp điểm theo thứ tự tăng dần:
Danh sách sẽ được sắp xếp lại như bảng sau:
Xem thêm các bài giải SBT Tin học lớp 7 Kết nối tri thức hay, chi tiết khác:
Bài 12: Định dạng đối tượng trên trang chiếu
Bài 13: Thực hành tổng hợp: Hoàn thiện bài trình chiếu
Bài 14: Thuật toán tìm kiếm tuần tự
Bài 15: Thuật toán tìm kiếm nhị phân