[toc:ul]
- Thuật toán tìm kiếm thu hẹp danh sách tìm kiếm chỉ còn một nửa, gọi là tìm kiếm nhị phân.
- Mô tả thuật toán tìm kiếm nhị phân bằng ngôn ngữ tự nhiên:
+ Bước 1. Nếu vùng tìm kiếm không có phần tử nào thì kết luận không tìm thấy và thuật toán kết thúc
+ Bước 2. Xác định vị trí giữa của vùng tìm kiếm. Vị trí này chia vùng tìm kiếm thành hai nửa: nửa trước và nửa sau vị trí giữa
+ Bước 3. Nếu giá trị cần tìm bằng giá trị của vị trí giữa thì kết luận “giá trị cần tìm xuất hiện tại vị trí giữa” và kết thúc.
+ Bước 4. Nếu giá trị cần tìm nhỏ hơn giá trị của vị trí giữa thì vùng tìm kiếm mới được thu hẹp lại, chỉ còn nửa trước của dãy. Ngược lại (nếu giá trị cần tìm lớn hơn giá trị của vị trí giữa) vùng tìm kiếm mới thu hẹp lại, chỉ còn nửa sau của dãy
+ Bước 5. Lặp lại từ Bước 1 đến Bước 4 cho đến khi tìm thấy giá trị cần tìm (Bước 3) hoặc tìm kiếm không còn phần tử nào (Bước 1)
- Lưu ý: “nửa trước” và “nửa sau” không gồm phần tử giữa
- Sắp xếp giúp cho việc tìm kiếm được thực hiện nhanh hơn