Bài giảng môn Tin học Lớp 7 - Chủ đề F - Bài 3: Sắp xếp chọn

Bài giảng môn Tin học Lớp 7 - Chủ đề F - Bài 3: Sắp xếp chọn

1. Ý tưởng sắp xếp bằng cách chọn dần

- Ví dụ: Cần đổi chỗ các số hạng trong dãy số 55, 19, 42, 94, 18, 67 để tạo ra được dãy có thứ tự giảm dần

- Giải thích:

Bước 1. Số lớn nhất trong dãy (94) cần được chuyển về vị trí thứ 1 trong dãy => đổi chỗ 94 và a1.

Bước 2. Số lớn nhất trong dãy còn lại (67) cần được chuyển về vị trí thứ 1 trong dãy còn lại => đổi chỗ 67 và a2.

Tiếp tục lặp lại việc “Chọn lấy số lớn nhất trong dãy số còn lại và đổi chỗ nó với số đứng đầu dãy này” cho đến khi hết dãy ban đầu.

 

pptx 23 trang Người đăng Tân Bình Ngày đăng 22/05/2024 Lượt xem 71Lượt tải 0 Download
Bạn đang xem 20 trang mẫu của tài liệu "Bài giảng môn Tin học Lớp 7 - Chủ đề F - Bài 3: Sắp xếp chọn", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên
BÀI 3 
SẮP XẾP CHỌN 
Có một bó que tính dài ngắn khác nhau, em hãy sắp xếp các que tính thành dãy từ trái sang phải theo thứ tự ngắn dần. 
1. Ý tưởng sắp xếp bằng cách chọn dần 
- Ví dụ: Cần đổi chỗ các số hạng trong dãy số 55, 19, 42, 94, 18, 67 để tạo ra được dãy có thứ tự giảm dần 
- Minh họa ý tưởng 
- Giải thích: 
Bước 1. Số lớn nhất trong dãy (94) cần được chuyển về vị trí thứ 1 trong dãy => đổi chỗ 94 và a 1 . 
Bước 2. Số lớn nhất trong dãy còn lại (67) cần được chuyển về vị trí thứ 1 trong dãy còn lại => đổi chỗ 67 và a 2 . 
Tiếp tục lặp lại việc “Chọn lấy số lớn nhất trong dãy số còn lại và đổi chỗ nó với số đứng đầu dãy này” cho đến khi hết dãy ban đầu. 
94 
55 
19 
42 
18 
67 
i 
j 
Lượt 1. Xét a 1 ; Tìm số lớn nhất trong dãy a 1 đến a 6 rồi đổi chỗ với a 1 . 
Minh họa 
55 
94 
19 
42 
18 
67 
i 
max 
Lượt 2. Xét a 2 ; Tìm số lớn nhất trong dãy a 2 đến a 6 rồi đổi chỗ với a 2 . 
55 
94 
67 
42 
18 
19 
i 
max 
Lượt 3. Xét a 3 ; Tìm số lớn nhất trong dãy a 3 đến a 6 rồi đổi chỗ với a 3 . 
42 
94 
67 
55 
18 
19 
i 
Lượt 4. Xét a 4 ; Tìm số lớn nhất trong dãy a 4 đến a 6 rồi đổi chỗ với a 4 . 
42 
94 
67 
55 
18 
19 
i 
max 
Lượt 5. Xét a 5 ; Tìm số lớn nhất trong dãy a 5 đến a 6 rồi đổi chỗ với a 5 . 
42 
94 
67 
55 
19 
18 
i 
Ta thu được dãy sắp xếp theo chiều giảm dần 
Lượt 6. Xét a 6 ; Đã xét xong dãy 
Bài toán sắp xếp ở mục 1 trên đây có gì giống và khác với bài toán sắp xếp nêu ở phần khởi động? Ý tưởng sắp xếp ở mục 1 có gì giống và khác với ý tưởng sắp xếp em đã sử dụng ở phần khởi động? 
TÌNH HUỐNG 
Trả lời 
Điểm giống và khác của bài toán ở mục 1 với bài toán sắp xếp nêu ở phần khởi động là: 
Giống: đều sắp xếp theo thứ tự giảm dẩn. 
Khác:  
Bài toán ở phần khởi động không có ý tưởng sắp xếp bằng cách chọn dần mà chỉ sắp xếp để phù hợp với yêu cầu của đề bài. 
Bài toán ở mục 1 là sắp xếp theo các bước, đổi chỗ các số cho nhau để được kết quả phù hợp . 
Trả lời 
Điểm giống và khác của ý tưởng sắp xếp ở mục 1 với ý tưởng sắp xếp em đã sử dụng ở phần khởi động là: 
Giống: đều đặt những que tính dài trước giống như chọn ra số lớn nhất ở bài toán mục 1. 
Khác:  
Bài toán ở phần khởi động: chỉ cần sắp xếp để được các que tính thành dãy theo thứ tự ngắn dần. 
Bài toán ở mục 1: đổi chỗ các số hạng để được dãy có thứ tự giảm dần. 
2. THUẬT TOÁN SẮP XẾP CHỌN 
- Đầu vào: Dãy số a 1 , a 2 , , a n gọi là dãy (a) 
- Đầu ra: Dãy số a’ 1 , a’ 2 , , a’ n gồm các số của dãy (a) nhưng thứ tự giảm dần 
- Thuật toán sắp xếp chọn: 
Lặp với i từ 1 đến n – 1: 
 a) Tìm số lớn nhất trong dãy số a i , a i+1 , , a n gọi là a m 
 b) Đổi chỗ a m và a i cho nhau 
Hết lặp 
- Trong các bước trên có yêu cầu tìm số lớn nhất (kí hiệu là a m ) trong dãy số cho trước (a ) 
Các bước để tìm được số lớn nhất của một dãy số nằm ở vị trí nào (Hình 3) 
Bước 1. Tạm ghi nhận vị trí của số lớn nhất là 1 
Bước 2. So sánh a 2 với số lớn nhất , nếu a 2 lớn hơn số lớn nhất thì ghi nhận lại vị trí số lớn nhất là 2. 
Cứ tiếp tục như vậy, đến khi so sánh xong a n với số lớn nhất và ghi nhận lại vị trí của số lớn nhất (nếu cần) thì số lớn nhất chính là số lớn nhất trong toàn bộ dãy và ta đã tìm được vị trí m của số lớn nhất trong dãy. 
Giả sử a 1 lớn nhất 
a 4 lớn hơn a 1 
a 4 lớn nhất 
MINH HỌA CÁCH TÌM SỐ LỚN NHẤT 
MAX 
3. Bài toán sắp xếp 
- Sắp xếp lài bài toán cơ sở của tin học. Duy trì dữ liệu được sắp xếp đúng thứ tự sẽ làm giảm đáng kể thời gian tìm kiếm dữ liệu. Các bài toán sắp xếp trong thực tế rất đa dạng. Khi phát biểu bài toán cần xác định rõ: 
1) Dãy đầu vào: Sắp xếp những gì? 
2) Tiêu chí: Sắp xếp theo cái gì? Thứ tự tăng dần hay giảm dần? 
- Ví dụ: Sắp xếp danh sách kết quả điểm kiểm tra môn Tin học theo thứ tự từ cao xuống thấp là bài toán sắp xếp. 
- Thực tế, khi sắp xếp thủ công (không dùng máy tính), thuật toán sắp xếp chọn thường được dùng 
Bài 1. Trình bày diễn biến từng bước của thuật toán sắp xếp chọn cho dãy số 11, 70, 18, 39, 63, 52, 41, 5 theo mẫu ở Hình 1 
Bài 2. Trong thuật toán sắp xếp chọn: 
1) Khi nào không cần thực hiện thao tác “Đổi chỗ a m và a i cho nhau” mà kết quả sắp xếp vẫn đúng? 
2) Nếu thay “Tìm giá trị lớn nhất” bằng “Tìm giá trị nhỏ nhất” thì kết quả nhận được là dãy số có thứ tự ra sao? 
Câu 1. Hãy nêu vài ví dụ bài toán sắp xếp trong thực tế và nói rõ tiêu chí sắp xếp. 
Câu 2. Hãy tóm tắt bằng một câu trả lời cho câu hỏi: Thế nào là sắp xếp chọn?	 

Tài liệu đính kèm:

  • pptx20230430_101642_683252_f3_sap_xep_chon.pptx