Gợi ý: Vị trí giữa của vùng tìm kiếm bằng phần nguyên của (vị trí đầu + vị trí cuối) /2.
Em hãy điền vào chỗ chấm trong gợi ý ở Bước 1 sau đây các bước sau thực hiện tương tự.
Trả lời:
Bước 1. Vị trí giữa của vùng tìm kiếm là 5. So sánh “Hòa” và “Mai”. Vì H đứng trước M trong bảng chữ cái nên vùng tìm kiếm là nửa trước của dãy (từ vị trí 1 đến vị trí 4).
Bước 2. Vị trí giữa của vùng tìm kiếm là 2. So sánh “Hòa” và “Bình”. Vì H đứng sau B trong bảng chữ cái nên vùng tìm kiếm là nửa sau của dãy (từ vị trí 3 đến vị trí 4).
Bước 3. Vị trí giữa của vùng tìm kiếm là 3. So sánh ta thấy giá trị ở vị trí giữa đúng là “Hòa” là giá trị cần tìm. Thuật toán kết thúc.
Gói VIP thi online tại VietJack (chỉ 400k/1 năm học), luyện tập gần 1 triệu câu hỏi có đáp án chi tiết
Điều kiện lặp của thuật toán tìm kiếm nhị phân là gì?
A. Chưa tìm thấy phần tử cần tìm.
B. Chưa hết danh sách.
C. Chưa tìm thấy phần tử cần tìm hoặc chưa hết danh sách.
D. Chưa tìm thấy phần tử cần tìm và chưa hết danh sách.
Thuật toán tìm kiếm nhị phân cần thực hiện bao nhiêu bước để thông báo không tìm thấy số 10 trong danh sách [2, 5, 8, 11, 14, 17] ?
A. 2 B. 3 C. 4 D. 5
Cho danh sách tên các nước sau đây:
Bolivia, Albania, Scotland, Canada, Vietnam, Iceland, Portugal, Greendland, Germany
Em hãy sắp xếp danh sách tên các nước theo thứ tự trong bảng chữ cái.
Thuật toán tìm kiếm nhị phân cần bao nhiêu bước để tìm thấy Thailand trong danh sách tên các nước sau:
Brunei, Campodia, Laos, Myanmar, Singpore, Thailand, Vietnam
A. 1 B. 2 C. 3 D. 4