Quảng cáo
4 câu trả lời 77
1. Chuẩn bị dữ liệu (Sắp xếp danh sách)
Danh sách sau khi sắp xếp theo thứ tự từ A-Z:
Brunei
Campuchia
Đông Timor
Indonesia
Lào
Malaysia
Myanmar
Philippines
Singapore
Thái Lan
Việt Nam
2. Các bước thực hiện thuật toán nhị phân
Chúng ta cần tìm: "Singapore". Gọi L là chỉ số đầu (1), R là chỉ số cuối (11).
Bước 1: Tìm vị trí ở giữa (Mid):
=> Vị trí thứ 6 là: Malaysia.
=> So sánh: "Singapore" đứng sau "Malaysia" trong bảng chữ cái.
=> Hành động: Bỏ nửa đầu, xét nửa sau từ vị trí 7 đến 11 (L = 7, R = 11).
Bước 2: Tìm vị trí ở giữa mới:
=> Vị trí thứ 9 là: Singapore.
=> So sánh: "Singapore" trùng khớp với giá trị cần tìm.
=> Kết luận: Tìm thấy "Singapore" tại vị trí thứ 9 sau 2 lần chia
Brunei, Campuchia, Đông Timor, Indonesia, Lào, Malaysia, Myanmar, Philippines, Singapore, Thái Lan, Việt Nam.
Bước 2: Tìm kiếm nhị phânXác định phần tử ở giữa danh sách (ví dụ: Malaysia).
So sánh "Singapore" với "Malaysia". Vì "S" đứng sau "M" trong bảng chữ cái, thuật toán sẽ bỏ qua nửa danh sách từ Brunei đến Malaysia và tiếp tục tìm ở nửa sau.
Lặp lại quá trình trên cho đến khi tìm thấy từ khóa "Singapore"
1. Sắp xếp danh sách (thứ tự A-Z)
Dưới đây là danh sách sau khi đã được sắp xếp:
0. Brunei
Campuchia
Indonesia
Lào
Malaysia
Myanmar
Philippines
Singapore
Thái Lan
Việt Nam
Đông Timor
2. Các bước tìm kiếm
Thuật toán nhị phân sẽ thực hiện qua các bước sau:
Sắp xếp danh sách: Thuật toán nhị phân chỉ hoạt động trên danh sách đã được sắp xếp theo thứ tự bảng chữ cái.
Xác định vị trí giữa (Lần 1):Phạm vi: từ chỉ số 0 đến 10.
Vị trí giữa là \(5\) (tương ứng với Myanmar).
Vì "Singapore" đứng sau "Myanmar" trong bảng chữ cái, ta bỏ qua nửa đầu và xét phạm vi từ chỉ số 6 đến 10.
Xác định vị trí giữa (Lần 2):Phạm vi: từ chỉ số 6 đến 10.
Vị trí giữa là \(8\) (tương ứng với Thái Lan).
Vì "Singapore" đứng trước "Thái Lan", ta xét phạm vi nhỏ hơn từ chỉ số 6 đến 7.
Xác định vị trí giữa (Lần 3):Phạm vi: từ chỉ số 6 đến 7.
Vị trí giữa là \(6\) (tương ứng với Philippines).
Vì "Singapore" đứng sau "Philippines", ta xét phạm vi chỉ còn lại chỉ số 7.
Xác định vị trí giữa (Lần 4):Vị trí giữa là \(7\) (tương ứng với Singapore).
Kết quả: Đã tìm thấy "Singapore" tại vị trí thứ 7.
Kết quả
✅ Singapore được tìm thấy tại vị trí (chỉ số) 7 trong danh sách đã sắp xếp.
Quảng cáo
Bạn cần hỏi gì?
Câu hỏi hot cùng chủ đề
-
Đã trả lời bởi chuyên gia
61633 -
Đã trả lời bởi chuyên gia
33063 -
Hỏi từ APP VIETJACK
Đã trả lời bởi chuyên gia
25274 -
Đã trả lời bởi chuyên gia
23844
