logo

Em và bạn hãy thực hiện trò chơi mô phỏng thuật toán tìm kiếm nhị phân theo hướng dẫn

Câu hỏi: Em và bạn hãy thực hiện trò chơi mô phỏng thuật toán tìm kiếm nhị phân theo hướng dẫn 

Lời giải: 

Các em tham khảo hướng dẫn sau:

Chuẩn bị 10 thẻ được đánh thứ từ từ A, B, C, D, E, F, G, H, K, L và sau thẻ đánh số tương ứng 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 xếp sắp theo thứ tự tăng dần.

- Thẻ số tăng dần: Tìm số 8

Dãy thẻ số

1

2

3

4

5

6

7

8

9

10

Thứ tự

A

B

C

D

E

F

G

H

K

L

Hình 2: Thẻ số tăng dần

- Gọi số cần tìm là x = 8.

Bước 1. Lật thẻ ở vị trí E (E = 5). 

Bước 2. So sánh số thấy vị trí E khác vị trí cần tìm (8 > 5) nên ta chỉ cần tìm ở nữa sau của dãy thẻ (gồm F, G, H, K, L).

Bước 3. Lật thẻ vị trí H (H = 8).

Bước 4. So sánh số thấy vị trí H bằng với kết quả cần tìm. Kết quả tìm thấy số 8 trong dãy ở vị trí H và kết thúc quá trình tìm kiếm.

- Thay đổi vai trò

Gọi số cần tìm là x = 10.

Bước 1. Lật thẻ ở vị trí E (E = 5). 

Bước 2. So sánh số thấy vị trí E khác vị trí cần tìm (10 > 5) nên ta chỉ cần tìm ở nữa sau của dãy thẻ (gồm F, G, H, K, L).

Bước 3. Lật thẻ vị trí H (H = 8).

Bước 4. So sánh số thấy vị trí H khác vị trí cần tìm (10 > 8). Nên ta chỉ cần tìm ở nữa sau của dãy thẻ (gồm K, L).

Bước 5. Ta lật ngẫu nhiên vị trí K hoặc L.

+ TH1: Lật thẻ vị trí K: So sánh số thấy vị trí K khác vị trí cần tìm (10 > 9). Tiếp theo ta lật thẻ còn lại, so sánh số thấy vị trí L bằng với kết quả cần tìm. Kết quả tìm thấy số 10 trong dãy ở vị trí L và kết thúc quá trình tìm kiếm.

+ TH2: Lật thẻ vị trí L: So sánh số thấy vị trí L bằng với kết quả cần tìm. Kết quả tìm thấy số 10 trong dãy ở vị trí L và kết thúc quá trình tìm kiếm.

icon-date
Xuất bản : 15/09/2022 - Cập nhật : 21/10/2023