Binary search tìm một giá trị mục tiêu trong một mảng đã được sắp xếp bằng cách liên tục chia đôi phạm vi tìm kiếm. Mỗi lần so sánh loại bỏ một nửa số phần tử còn lại, cho ra thời gian O(log n).
Ý tưởng
Xét phần tử ở giữa. Nếu nó bằng giá trị mục tiêu, xong. Nếu mục tiêu nhỏ hơn, tìm ở nửa trái; nếu lớn hơn, tìm ở nửa phải. Lặp lại cho đến khi tìm thấy hoặc phạm vi rỗng.
