BINARY SEARCH LÀ GÌ


Cách Binary Search làm cho việc

Để Binary Search thao tác thì mảng bắt buộc cần phải sắp xếp. Để luôn tiện đến câu hỏi theo dõi, bản thân sẽ cung ứng thêm các hình minh họa tương ứng cùng với từng bước.

Giả sử họ bắt buộc tra cứu địa chỉ của giá trị 3một trong các một mảng bao gồm các quý hiếm như hình sau đây vì chưng sử dụng Binary Search:

*

Đầu tiên, họ phân tách mảng thành nhị nửa theo phép toán thù sau:

Output:


Với ví dụ trên là 0 + (9 – 0)/ 2 = 4 (quý hiếm là 4.5). Do đó 4 là chỉ mục giữa của mảng.

Bạn đang xem: Binary search là gì

*

Bây tiếng chúng ta đối chiếu quý hiếm bộ phận thân cùng với bộ phận buộc phải tìm. Giá trị phần tử thân là 27 với phần tử phải tra cứu là 31, cho nên là không liên kết. Bởi bởi quý hiếm buộc phải search là to hơn yêu cầu thành phần buộc phải tra cứu đã nằm ở mảng nhỏ mặt bắt buộc thành phần thân.

*

Chúng ta chuyển đổi quý giá ban-đầu thành chỉ-mục-thân + 1 và lại tiếp tục tìm kiếm kiếm quý giá chỉ-mục-giữa.

Output:


Bây tiếng chỉ mục thân của chúng ta là 7. Chúng ta đối chiếu quý hiếm tại chỉ mục này với mức giá trị phải tìm.

*

Giá trị trên chỉ mục 7 là không liên kết, cùng ngoại giả quý hiếm phải tìm kiếm là nhỏ tuổi rộng cực hiếm tại chỉ mục 7 do đó họ nên kiếm tìm trong mảng nhỏ phía bên trái của chỉ mục giữa này.

Xem thêm: Cách Đổi Vntime Sang Time New Roman Và Ngược Lại, Chuyển Font

*

Tiếp tục search chỉ-mục-thân lần tiếp nữa. Lần này nó có mức giá trị là 5.

*

So sánh quý giá trên chỉ mục 5 với cái giá trị đề xuất tra cứu cùng thấy rằng nó liên kết.

*

Do kia bọn họ tóm lại rằng quý hiếm phải tìm 31 được giữ lại tại địa điểm chỉ mục 5.

Binary Search phân tách đôi lượng phần tử cần search với cho nên sút số lượng phnghiền đối chiếu nên thực hiện buộc phải giải mã tìm tìm này được triển khai hơi nkhô giòn.

Giải thuật mẫu mang lại Binary Search

Dưới đây là code mẫu đến lời giải tra cứu kiếm nhị phân: