II. Khái niệm thuật tốn: Ví dụ: Tìm giá trị lớn nhất
a) Thuật tốn tìm kiếm tuần tự
tuần tự (sequential search) Xác định bài tốn - Input: Dãy A gồm N số nguyên khác nhau a1, a2, …, aN và số nguyên k; - Output: Chỉ số i mà ai = k hoặc thơng báo khơng cĩ số hạng nào của dãy A cĩ giá trị bằng k.
Ý tưởng:
- Tìm kiếm tuần tự là lần lượt từ số hạng thứ nhất, ta so sánh giá trị số hạng đang xét với khố cho đến khi hoặc gặp một số hạng bằng
Đặt vấn đề: Tìm kiếm là một việc thường xảy ra trong cuộc sống. Cho dãy A gồm: 5, 7, 1, 4, 2, 9, 8, 11, 25, 51. Tìm i với ai = 2 ? Tổ chức các nhĩm thảo luận H. Hãy xác định bài tốn? GV hướng dẫn HS tìm thuật tốn giải bài tốn. i = 5
Các nhĩm thảo luận, đưa ra ý kiến
Đ. + Input: N, a1, a2, …, aN, k + Output: i hoặc thơng báo khơng cĩ i
Cho các nhĩm trình bày ý tưởng.
khố hoặc dãy đã được xét hết và khơng cĩ giá trị nào bằng khố. Trong trường hợp thứ hai dãy A khơng cĩ số hạng nào bằng khố. Thuật tốn: * Cách liệt kê: - B1: Nhập N, các số hạng a1, a2, …, aN và khố k; - B2: i 1; - B3: Nếu ai = k thì thơng báo chỉ số i, kết thúc; - B4: i i + 1; - B5: Nếu i >N thì thơng báo dãy A khơng cĩ số hạng nào cĩ giá trị bằng k, rồi kết thúc.
- B6: Quay lại bước 3.
GV hướng dẫn HS trình bày thuật tốn tìm kiếm bằng cách liệt kê.
i là biến chỉ số và nhận giá trị nguyên lần lượt từ 1 đến N+1.
Các nhĩm thảo luận và đưa ra thuật tốn.
Hoạt động 2: Diễn tả thuật tốn tìm kiếm bằng sơ đồ khối
5
* Sơ đồ khối:
Hoạt động 3: Mơ phỏng việc thực hiện thuật tốn
5 Mơ phỏng việc thực hiện thuật tốn với: + N = 10, k = 2 k = 2 vµ N = 10 A 5 7 1 4 2 9 8 11 25 51 i 1 2 3 4 5 - - - - - Víi i = 5 th× a5 = 2.
Hoạt động 4: Hướng dẫn tìm thuật tốn giải bài tốn
10