Bài toán tìm vùng chỉ số của dãy đã sắp xếp. Thiết lập thuật toán chia để trị để giải bài toán sau: Cho trước
Giải thích
Thực hiện các bước sau:
1. Tìm phần tử giữa của dãy.
2. Nếu giá trị ở vị trí giữa lớn hơn K, ta tiếp tục tìm kiếm trong nửa đầu của dãy (bên trái phần tử giữa).
3. Nếu giá trị ở vị trí giữa nhỏ hơn K, ta tiếp tục tìm kiếm trong nửa sau của dãy (bên phải phần tử giữa).
4. Nếu giá trị ở vị trí giữa bằng K, ta tiến hành tìm vị trí bắt đầu và kết thúc của đoạn chứa các phần tử bằng K bằng cách tiến hành tìm kiếm vị trí bắt đầu và kết thúc của các phần tử liên tiếp bằng K từ phải sang trái và từ trái sang phải. Khi tìm được hai vị trí này, ta sẽ trả về start và end.
5. Nếu không tìm thấy K trong dãy, ta trả về -1, -1.