Hãy trình bày thuật toán tìm kiếm tuần tự theo phương pháp làm mịn dần

Câu 26.5 trang 79 SBT Tin học 11Hãy trình bày thuật toán tìm kiếm tuần tự theo phương pháp làm mịn dần.

Trả lời

Một cách trình bày theo phương pháp làm mịn dần có thể như sau:

Bài toán: Cho trước mảng A (có n phần tử) và giá trị K. Cần tìm phần tử của A có giá trị bằng K. Nếu tìm thấy trả lại chỉ số của phần tử này (chỉ cần tìm một nghiệm), ngược lại trả về −1.

Bước 1. Thiết lập ý tưởng thiết kế ban đầu.

1 Duyệt các phần tử của mảng A từ trái sang phải.

2 Giả sử chỉ số đang duyệt là i, kiểm tra xem A[i] = K

hay không, nếu đúng thì dừng lại, trả về i.

3 Cuối cùng trả về -1.

Bước 2. Chi tiết hoá dòng 1 ở trên.

5 for i in range(len(A)):

Bước 3. Chi tiết hoá dòng 2 của ý tưởng thiết kế ban đầu.

7 if A[i] == K:

8

return i

Bước 4. Chi tiết hoá dòng 3 của ý tưởng thiết kế ban đầu.

return -1

Chương trình hoàn chỉnh:

def LinearSearch (A):

for i in range (A):

if A[i] == K:

return -1

return i

Xem thêm các bài giải SBT Tin học 11 Kết  nối tri thức hay, chi tiết khác:

Câu hỏi cùng chủ đề

Xem tất cả