Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 16 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
16
Dung lượng
3,79 MB
Nội dung
1 2 Kiểm tra bài cũ Cho dãy số 6 5 7 1 7 2. Sử dụng thuật toán sắp xếp hãy mô tả quá trình sắp xếp của dãy số 3 Tiết 13 Chương I Một số khái niệm cơ bản của tin học 4 5 6 8 2 4 7 >< > > > > < < < THÀNH CÔNG! Ví dụ Hãy tìm vị trí của phần tử có giá trị là 7 1 2 3 4 5 6 Tìm thấy phần tử có giá trị là 7 ở vị trí thứ 5 5 Ví dụ: TÌM 1 QUYỂN SÁCH TRONG 50 QUYỂN??? 6 Ví dụ: CÒN 10.000 QUYỂN THÌ SAO 7 Một số công việc tìm kiếm Tìm một quyển sách trên kệ sách; Tìm 1 từ trong cuốn từ điển; Tìm 1 học sinh trong danh sách lớp nào đó; … 8 Ví dụ 3: Bài toán tìm kiếm 9 - 41 8- 3 2 6 Với i = 5 thì a 5 = 9 9 5 63 71 2 4 A i k Cho dãy A gồm N số nguyên khác nhau: a 1 ,a 2 , ,a N và số nguyên k. Cần biết có hay không chỉ số i (1 ≤ i ≤ N) mà ai = k. Nếu có hãy cho biết chỉ số đó.(k được gọi là khóa tìm kiếm) Ví dụ: Với N = 7 k 7 Không có số hạng nào, không có i 9 Xác định bài toán: Dãy A gồm N số nguyên khác nhau: a 1 ,a 2 , ,a N và số nguyên k; Chỉ số i sao cho a i =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ự được thực hiện lần lượt từ số hạng thứ 1 đến số hạng thứ i; So sánh giá trị số hạng đang xét với khóa k nếu a i =k thì đưa ra chỉ số i rồi kết thúc thuật toán hoặc i>N thì kết thúc thuật toán; LIỆT KÊ B1: Nhập N, các số hạng a 1 , a 2 , a 3 ,…, a N và khóa k; B2: i ← 1; B3: Nếu a i = k thì thông báo chỉ số i rồi kết thúc; B4: i ← i+1; B5: Nếu i >N, dãy A không có số hạng nào có giá trị bằng k, kết thúc; B6: Quay lại bước 3; Thuật toán tìm kiếm tuần tự [...]... những vấn đề sau: - Xác định chính xác dữ liệu vào (Input) và dữ liệu ra(Output) của bài toán tìm kiếm tuần tự - Tìm ra được ý tưởng để viết thuật toán - Trình bày được thuật toán bằng 2 cách (Liệt kê và sơ đồ khối) Bài tập về nhà: -Về nhà làm bài tập số 7 trong SGK - Trong thuật toán tìm kiếm tuần tự có thể chuyển điều kiện i>n (bước 5) lên sau bước 2 được không? Nếu được cần thay đổi lại cách liệt... ai(cần tìm) = ? ai = 4000.000 4.500.00 0 1 Thử tài nhanh nhẹn 1 2 3 3 4 4 5 6 7 SƠ ĐỒ KHỐI ai = k Đưa ra i rồi kết thúc i i+1 Thông báo dãy A không có số hạng có giá trị bằng k rồi kết thúc i>N Nhập N và a1, a2, a3, , aN; k i 1 a b d Đúng c Sai e Sai Đún g f g Qua bài học này các em cần nắm được những vấn đề sau: - Xác định chính xác dữ liệu vào (Input) và dữ liệu ra(Output) của bài toán tìm kiếm tuần.. .Thuật toán tìm kiếm tuần tự LIỆT KÊ B1: Nhập N, số hạng a1, ,aN và khóa k; B2: i ← 1; B3: Nếu ai =k, thông báo chỉ số i rồi kết thúc; B4: i ← i+1; B5: Nếu i >N, dãy A không có số hạng nào có giá trị bằng k, kết... Đún g Thông báo dãy A không có số hạng có giá trị bằng k rồi kết thúc Mô phỏng việc thực hiện thuật toán K = 8, N = 4 K = 12, N = 4 A 9 6 12 7 A 9 6 12 7 i 1 2 3 4 i 1 2 3 4 Với i = 1 thì ai (a1) = ? Với i = 2 thì ai(a2) = ? 5 ai (a1) = 9 ai(a2) = 6 ai (a3)= 12 Với i = 3 thì ai (a3)= ? Vậy với chỉ số i = 3 ta tìm được số hạng ai có giá trị bằng K (k=12) Với i = 1 thì ai (a1) = ? ai (a1) = 9 ai(a2) =... ai (a2) = ? Với i = 3 thì ai (a3) = ? ai (a3)= 12 ai (a4)= 12 ai (a5)= Với i = từ 1 đến ? Với mọi i5 thì ai (a5)4=không có ai có giá trị bằng 8 Với i = 4 thì ai (a4) = ? 12 Mô phỏng việc thực hiện thuật toán i Nhậpnnvà A1,A2,… Nhập nvà A1,A2, Nhập và A1,A2, An; …An;KK …An; K iii 11 1 Ai =K ? Ai = K ? ? Ai K S ii i+1 i i+1 i+1 S iii> n? >n? n? Đ Thông báo dãy A ko có giá trị =K rồi kết thúc . SAO 7 Một số công việc tìm kiếm Tìm một quyển sách trên kệ sách; Tìm 1 từ trong cuốn từ điển; Tìm 1 học sinh trong danh sách lớp nào đó; … 8 Ví dụ 3: Bài toán tìm kiếm 9 - 41 8- 3 2 6 Với. dữ liệu vào (Input) và dữ liệu ra(Output) của bài toán tìm kiếm tuần tự - Tìm ra được ý tưởng để viết thuật toán - Trình bày được thuật toán bằng 2 cách (Liệt kê và sơ đồ khối) Bài tập về. i >N, dãy A không có số hạng nào có giá trị bằng k, kết thúc; B6: Quay lại bước 3; Thuật toán tìm kiếm tuần tự LIỆT KÊ B1: Nhập N, số hạng a 1 , ,a N và khóa k; B2: i ← 1; B3: Nếu a i