Thuat toan tim kiem tuan tu

13 3.7K 32
Thuat toan tim kiem tuan tu

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

(TiÕt PPCT :13) 1 5 4 3 2 6 Ví dụ 1: Cho 6 quả cầu có khối lượng khác nhau. Hãy tìm vị trí quả cầu có khối lượng bằng 2kg. 1 kg1,5 kg1,65 kg2,5 kg2 kg Vậy quả cầu có khối lượng bằng 2kg ở vị trí thứ 5 54321i 5125118924175A M« pháng t×m kiÕm trong mét d·y sè nguyªn M« pháng t×m kiÕm trong mét d·y sè nguyªn  Víi k = 2 vµ d·y A gåm 10 sè h¹ng nh­ sau: T¹i vÞ trÝ i = 5 cã a 5 = 2 = k  Víi k = 6 vµ d·y A gåm 10 sè h¹ng nh­ sau: A 5 7 1 4 2 9 8 11 25 51 i 1 2 3 4 5 6 7 8 9 10 11 Víi mäi i tõ 1 10 kh«ng cã a i cã gi¸ trÞ b»ng 6 K 5 K Bài toán : Cho dãy A gồm N số nguyên khác nhau a 1 ,a 2 , .,a n và số nguyên K cho trước. Hãy xác định thuật toán tìm chỉ số i mà a i = k. Ví dụ 3 :Thuật toán tìm kiếm tuần tự Xác định bài toán: INPUT: Dãy A gồm N số nguyên a 1 , a 2 , , a N đôi một khác nhau và số nguyên k. OUTPUT: Chỉ số i mà a i = k hoặc thông báo không có số hạng nào của A bằng k. ý tưởng: 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 khoá (k) cho đến khi có sự trùng nhau, nếu đã xét tới số hạng cuối cùng mà không có sự trùng nhau thì có nghĩa là dãy A không có số hạng nào có giá trị bằng k. Cách 1: Liệt kê các bước Cách 1: Liệt kê các bước Bước 1: Nhập N, các số hạng a Bước 1: Nhập N, các số hạng a 1 1 , a , a 2 2 , , a , , a N N và giá trị khoá k; và giá trị khoá k; Bước 2: i Bước 2: i 1; 1; Bước 3: Nếu a Bước 3: Nếu a i i = k thì thông báo chỉ số i, rồi kết thúc; = k thì thông báo chỉ số i, rồi kết thúc; Bước 4: i Bước 4: i i+1; i+1; Bước 5: Nếu i > N thì thông báo dãy A không có số Bước 5: 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; hạng nào có giá trị bằng k, rồi kết thúc; Bước 6: Quay lại B3. Bước 6: Quay lại B3. Đưa ra i rồi kết thúc Nhập N:5,1,9,7,6 và k=4 i 1 a i = k? Đ S Đ i i + 1 i > N ? 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 S B1 B2 B3 B4 B5 B6 Cách 2 Vẽ sơ đồ khối Nhập N, a 1 , a 2 , ., a N và k i 1 a i = k ? Đưa ra i rồi kết thúc Đ S Đ i i + 1 i > N ? 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 S 67415 N Nhập N, 5, 1,4,7,6 và k=4 i=1 i 1 5 = 4 ? i 1 K=4 i 2 i=2 2 > 5 ? i 1 Nhập N, 5,1,4,7,6 và 4 i 2 a i = k ? Đưa ra i rồi kếtthúc Đ S Đ i i + 1 i > N ? 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 S 1 = 4 ? i 3 i=3 3 > 5 ? Nhập N,5,1,4,7,6 và 4 i 3 a i = k ? Đưa ra i rồi kết thúc Đ S Đ i i + 1 i > N ? 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 S 4 = 4 ? Chỉ số i cần tìm là i=3 32 NhËp N, a 1 , a 2 , ., a N vµ k i ← 1 a i = k ? §­a ra i råi kÕt thóc § S § i ←i + 1 i > N ? 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 S 7915 N NhËp N, 5, 1,4,7,6 vµ k=4 i=1 i ← 1 5 = 4 ? i 1 K=4 i ←2 i=2 2 > 5 ? i ← 1 NhËp N, 5,1,4,7,6 vµ 4 i ← 2 a i = k ? §­a ra i råi kÕtthóc § S § i ←i + 1 i > N ? 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 S 1 = 4 ? i ←3 i=3 3 > 5 ? NhËp N,5,1,4,7,6 vµ 4 i ← 3 a i = k ? §­a ra i råi kÕt thóc § S § i ←i + 1 i > N ? 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 S 9 = 4 ? 32 i ←4 4 > 5 ? 6 NhËp N:5,1,9,7,6 vµ k=4 i ← 4 a i = k ? §­a ra i råi kÕt thóc § S § i ←i + 1 i > N ? 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 S i=4 4 7 = 4 ? i ←5 5> 5 ? NhËp N:5,1,9,7,6 vµ k=4 i ← 5 a i = k? § S § i ←i + 1 i > N ? 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 S i=5 6=4? 5 i ←6 6> 5? 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 C¸c tÝnh chÊt cña thuËt to¸n:  TÝnh dõng  TÝnh x¸c ®Þnh  TÝnh ®óng ®¾n [...]... thuật toán Thuật toán giải phương trình bậc hai (a 0) Thuật toán tìm Max của một dãy số Thuật toán kiểm tra tính nguyên tố của một số nguyên dương Thuật toán sắp xếp bằng tráo đổi Thuật toán tìm kiếm tu n tự và nhị phân . Hãy xác định thuật toán tìm chỉ số i mà a i = k. Ví dụ 3 :Thuật toán tìm kiếm tu n tự Xác định bài toán: INPUT: Dãy A gồm N số nguyên a 1 , a 2 , , a N đôi. một số nguyên dương. Thuật toán sắp xếp bằng tráo đổi. Thuật toán tìm kiếm tu n tự và nhị phân.

Ngày đăng: 25/06/2013, 01:27

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan