Giải Tin học 7 Bài 4 (Cánh diều): Sắp xếp nổi bọt
Với soạn, giải bài tập Tin học lớp 7 Bài 4: Sắp xếp nổi bọt sách Cánh diều hay nhất, chi tiết sẽ giúp học sinh dễ dàng trả lời câu hỏi và làm bài tập Tin học 7 Bài 4.
Giải Tin học 7 Bài 4: Sắp xếp nổi bọt
Khởi động
Khởi động trang 87 Tin học 7: Làm thế nào để cho máy tính biết một dãy đã có thứ tự tăng dần?
Trả lời:
Để cho máy tính biết một dãy đã có thứ tự tăng dần thì máy tính phải so sánh lần lượt các cặp số liền kề cho đến khi không còn cặp liền kề nào trái thứ tự mong muốn.
1. Ý tưởng sắp xếp bằng cách đổi chỗ các phần tử liền kề
Hoạt động
- So sánh số kẹo trong hai hộp cạnh nhau.
- Hoán đổi vị trí hai hộp kẹo cạnh nhau.
Theo em, chú robot phải làm thế nào để sắp xếp lại các hộp sao cho số kẹo trong các hộp tăng dần?
Trả lời:
Chú robot đã sắp xếp lại các hộp sao cho số kẹo trong các hộp tăng dần như sau:
- Ở lượt thứ nhất, so sánh hai hộp đầu tiên, nếu số kẹo ở hộp đứng trước lớn hơn số kẹo ở hộp đứng sau thì đổi vị trí hai hộp này cho nhau. Tiếp tục làm như vậy với hộp thứ 2 và thứ 3, với hộp thứ 3 và thứ 4,... cho đến hết dãy hộp kẹo là hết một lượt. Sau khi thực hiện các thao tác như vậy, hộp cuối dãy là hộp chứa nhiều kẹo nhất.
- Tiếp tục lượt thứ 2, thứ 3 theo cách như lượt thứ nhất, cứ lặp lại như vậy cho đến khi gặp một lượt mà suốt cả lượt đó robot không phải đổi chỗ hai hộp nào thì dãy đã được sắp xếp xong, robot kết thúc công việc.
2. Thuật toán sắp xêp nổi bọt
Hoạt động
Trả lời:
Các em thực hiện thuật toán và nhận thấy đây là thuật toán sắp xếp nổi bọt.
Luyện tập
Trả lời:
Ví dụ: Mô tả thuật toán sắp xếp dãy số nguyên sau: 5, 1, 4, 2, 8.
Sau ba lượt đi từ đầu đến cuối dãy để so sánh và đổi chỗ khi thuật toán kết thúc. Tổng số có 4 lần đổi chỗ hai phần tử liền kề.
Vận dụng
Vận dụng 1 trang 89 Tin học 7:
1) Trong thuật toán sắp xếp nổi bọt thì dấu hiệu để biết dãy chưa sắp xếp xong là gì?
Trả lời:
1) Trong thuật toán sắp xếp nổi bọt thì dấu hiệu để biết dãy chưa sắp xếp xong là: còn cặp liền kề trái thứ tự mong muốn.
2) Hình trên mô tả chi tiết một lượt robot thực hiện so sánh các cặp phần tử liền kề và đổi chỗ khi chúng trái thứ tự mong muốn.
Trả lời:
Thuật toán sắp xếp trên lại được gọi là sắp xếp nổi bọt vì nó thực hiện nhiều phép so sánh và đổi chỗ các cặp phần tử liền kề cho đến khi không còn bất kì cặp phần tử liền kề nào trái thứ tự mong muốn.
Câu hỏi tự kiểm tra
Trả lời:
Trong thuật toán sắp xếp nổi bọt, hai phần tử liền kề được đổi chỗ khi trái thứ tự mong muốn.
Câu 2 trang 89 Tin học 7: Thuật toán nổi bọt kết thúc khi nào?
Trả lời:
Thuật toán nổi bọt kết thúc khi không còn bất cứ cặp liền kề (ai, ai+1) nào trái thứ tự mong muốn, tức là trong một lượt không còn xảy ra đổi chỗ lần nào nữa.
Trả lời:
Thực hiện thuật toán sắp xếp nổi bọt chỉ cần một lượt so sánh các cặp liền kề và đổi chỗ khi dãy chỉ có một cặp liền kề trái thứ tự mong muốn.
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.
⇒ Kết luận: Thuật toán sắp xếp nổi bọt thực hiện nhiều lượt so sánh và đổi chỗ các cặp phần tử liền kề cho đến khi không còn bất kì cặp phần tử liền kề (ai, ai+1) nào trái thứ tự mong muốn.
Xem thêm lời giải bài tập Tin học lớp 7 Cánh diều hay, chi tiết khác:
Bài 5: Thực hành mô phỏng các thuật toán tìm kiếm, sắp xếp
Bài 1: Thiết bị vào - ra cơ bản cho máy tính cá nhân
Bài 3: Thực hành với các thiết bị vào – ra
Bài 4: Một số chức năng của hệ điều hành
Xem thêm tài liệu Tin học lớp 7 Cánh diều hay, chi tiết khác:
Xem thêm các chương trình khác:
- Giải sgk Toán 7 – Cánh Diều
- Giải sbt Toán 7 – Cánh Diều
- Lý thuyết Toán 7 – Cánh Diều
- Giải VBT Toán 7 – Cánh diều
- Soạn văn lớp 7 (hay nhất)– Cánh Diều
- Tác giả tác phẩm Ngữ văn lớp 7 – Cánh Diều
- Tóm tắt tác phẩm Ngữ văn lớp 7 – Cánh Diều
- Bố cục tác phẩm Ngữ văn lớp 7 – Cánh Diều
- Nội dung chính tác phẩm Ngữ văn lớp 7 – Cánh Diều
- Giải sbt Ngữ văn lớp 7 – Cánh Diều
- Văn mẫu lớp 7 – Cánh Diều
- Soạn văn lớp 7 (ngắn nhất) – Cánh Diều
- Giải VBT Ngữ văn lớp 7 – Cánh diều
- Giải sgk Tiếng Anh 7 - Explore English
- Giải sgk Tiếng Anh 7 – ilearn Smart World
- Trọn bộ Từ vựng Tiếng Anh 7 ilearn Smart World đầy đủ nhất
- Ngữ pháp Tiếng Anh 7 i-learn Smart World
- Bài tập Tiếng Anh 7 iLearn Smart World theo Unit có đáp án
- Giải sbt Tiếng Anh 7 - ilearn Smart World
- Giải sgk Lịch sử 7 – Cánh Diều
- Lý thuyết Lịch Sử 7 – Cánh Diều
- Giải sbt Lịch sử 7 – Cánh Diều
- Giải VBT Lịch sử 7 – Cánh diều
- Giải sgk Khoa học tự nhiên 7 – Cánh Diều
- Lý thuyết Khoa học tự nhiên 7 – Cánh Diều
- Giải sbt Khoa học tự nhiên 7 – Cánh Diều
- Giải sgk Địa lí 7 – Cánh Diều
- Lý thuyết Địa Lí 7 – Cánh Diều
- Giải sbt Địa lí 7 – Cánh Diều
- Giải VBT Địa lí 7 – Cánh diều
- Giải sgk Giáo dục công dân 7 – Cánh Diều
- Lý thuyết Giáo dục công dân 7 – Cánh Diều
- Giải sbt Giáo dục công dân 7 – Cánh Diều
- Giải sgk Hoạt động trải nghiệm 7 – Cánh Diều
- Giải sbt Hoạt động trải nghiệm 7 – Cánh Diều
- Giải sgk Công nghệ 7 – Cánh Diều
- Lý thuyết Công nghệ 7 – Cánh Diều
- Giải sbt Công nghệ 7 – Cánh Diều
- Giải sgk Giáo dục thể chất 7 – Cánh Diều
- Giải sgk Âm nhạc 7 – Cánh Diều