Bài 4: Bài toán và thuật toán... Bài toán sắp xếp... Cần sắp xếp các số hạng để dãy A trở thành dãy không giảm... Ý tưởng: Với mỗi cặp số hạng đứng liền kề trong dãy, nếu số trước lớn
Trang 1 Tên đơn vị: Trường THPT Mường Luân
Tác giả: Lê Ngọc Đạt
Tên môn, khối: Tin học khối 10
Tên bài giảng: Bài 4 Bài toán và thuật toán
Tiết: 13
Trang 2Tiết 13 Bài 4: Bài toán và thuật toán
Trang 3 Ví dụ 2 Bài toán sắp xếp
Trang 4Cho dãy A gồm N số nguyên a 1 ,
a 2 ,…, a N Cần sắp xếp các số hạng để dãy A trở thành dãy không giảm
Ví dụ: dãy A: 6, 1, 5, 3, 7, 8, 10,
7, 12, 4
Trang 5 Sau khi sắp xếp ta thu được dãy A’:
1, 3, 4, 5, 6, 7, 7, 8, 10, 12
Trang 6Quay lại với bài toán: Cho dãy A gồm N số
nguyên a 1 , a 2 ,…, a N Cần sắp xếp các số hạng để dãy A trở thành dãy không giảm
Trang 7 Ý tưởng: Với mỗi cặp số hạng đứng liền kề
trong dãy, nếu số trước lớn hơn số sau ta đổi chỗ chúng cho nhau Việc đó được lặp lại cho đến khi không có sự đổi chỗ nào xảy ra nữa.
Trang 9Bài toán: Sắp xếp dãy A gồm N số nguyên a1,a2, , aN thành
dãy không giảm
Bước 1: nhập N và a1, a2,…,
aN Bước 2: M N← Bước 3: Nếu M < 2 thì đưa
ra dãy A đã được sắp xếp rồi kết thúc
Bước 4: gán M= M – 1; i= 0 Bước 5: gán i:= i + 1
Bước 6: nếu i > M thì quay lại bước 3
i > M ? đúng
sai
Nhập N và a1, a2, …, aN
M ← N
M < 2 ?
M ← M - 1; i ← 0
i ← i + 1
Đưa ra A rồi kết thúc đúng
Liệt kê
Sơ đồ khối