15.1.Thuật toán tìm kiếm nhị phân được sử dụng trong trường hợp nào?
A. Tin một phần tử trong danh sách bất kì.
B. Tiến trước phần tử trong danh sách đã được sắp xếp,
Đáp án: B. Tiến trước phần tử trong danh sách đã được sắp xếp
15.2. Điều gì xảy ra khi thuật toán tìm kiếm nhị phần không tìm thấy giá trị cần tim trong danh sách
A. Tiếp tục tìm kiếm và không bao giờ kết thúc
B. Thông báo Tìm thấy và tiến tiếp xem còn phần tử nào khác nữa không.
C. Thông báo Tìm thấy và kết thúc
D. Thông báo "Không tìm thấy và kết thúc
Đáp án: D. Thông báo "Không tìm thấy và kết thúc
15.3. Chọn câu diễn đạt đúng hoạt động của thuật toán tìm kiếm nhị phân
A. Tim trên danh sách đã sắp xếp, bắt đầu từ đầu danh sách, chứng nào chưa tìm thấy hoặc chưa tìm hết thị còn tìm tiếp.
B. Tiến trên danh sách đã sắp xếp, bắt đầu từ giữa danh sách, chừng nào chưa tìm thấy hoặc chưa tìm hết thì còn tin tiếp.
C. Tìm trên danh sách bất kì, bắt đầu từ giữa danh sách, chừng nào chưa tìm thấy hoặc chưa tím hết thì còn tim tiếp.
D. Tiến trên danh sách bất kì, bắt đầu từ đầu danh sách, chứng nào chưa tìm thấy hoặc chưa tim hết thì còn tìm tiếp
Đáp án: B. Tiến trên danh sách đã sắp xếp, bắt đầu từ giữa danh sách, chừng nào chưa tìm thấy hoặc chưa tìm hết thì còn tin tiếp.
15.4. Thuật toán tìm kiếm nhị phân cần bao nhiêu bước để tìm thấy “Mai” trong danh sách [Hoa", "Lan”, ”Ly”, ”Mai”, ”Phong”, ”Vi”]?
A. 1.
B.2.
C. 3.
D. 4.
Đáp án: C. 3.
15.5. Thuật toán tìm kiếm nhị phân cần thực hiện bao nhiêu bước lặp để thông báo không tìm thấy số 15 trong danh sách [3, 5, 7, 11, 12, 25]?
A. 2. B. 3. C. 4. D. 5.
Đáp án: C. 4.
15.6. Thực hiện thuật toán tìm kiếm nhị phân để tìm số 10 trong danh sách [2, 4 ,6, 8, 10, 12]. Đầu ra của thuật toán là?
A. Thông báo “Không tìm thấy”.
B. Thông báo “Tìm thấy”.
C. Thông báo “Tìm thấy”, giá trị cần tìm tại vị trí thứ 5 của danh sách.
D. Thông báo “Tìm thấy”, giá trị cần tìm tại vị trí thứ 6 của danh sách.
Đáp án: C. Thông báo “Tìm thấy”, giá trị cần tìm tại vị trí thứ 5 của danh sách.
15.7. Hãy ghép mỗi nội dung ở cột A với những nội dung phù hợp ở cột B để xác định đầu vào và đầu ra của thuật toán tìm kiếm nhị phân.
Đáp án: 1-c; 1-d; 2-a; 2-b.
15.8. Em hãy điền các cụm từ: giá trị cần tìm xuất hiện ở vị trí giữa, nửa sau, “Không tìm thấy”, nửa trước vào chỗ chấm (...) được đánh số trong các câu sau để được mô tả chính xác về thuật toán tìm kiếm nhị phân.
Bước 1: Bước 1. Nếu vùng tìm kiếm không có phần tử nào thì kết luận .... (1). .... và thuật toán kết thúc.
Bước 2. Xác định vị trí giữ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 .....(2)...... và thuật toán 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 ...... .(3).................. 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) thì vùng tìm kiếm mới được thu hẹp lại, chỉ còn ........ (4)......... của dãy.
Bước 5. Lặp lại từ Bước 1 đến Bước 5 cho đến vùng tìm kiếm không khi còn phần tử nào (Bước 1) hoặc tìm thấy giá trị cần tìm (Bước 3).
Đáp án:
(1) – “Không tìm thấy”;
(2) – giá trị cần tìm xuất hiện ở vị trí giữa;
(3) – nửa trước;
(4) – nửa sau.
15.9. Cho bảng điểm môn Tin học của học sinh tổ một như sau:
a) Em hãy sắp xếp lại danh sách theo thứ tự tăng dần của Điểm.
b) Em hãy liệt kê các bước lặp thực hiện thuật toán tìm kiếm nhị phân để tìm học sinh được điểm 9,5 môn Tin học. Hãy cho biết tên học sinh đó.
Đáp án:
a) Danh sách học sinh sắp xếp theo thứ tự tăng dần của Điểm là:
b) Các bước thực hiện thuật toán tìm kiếm nhị phân để tìm học sinh được điểm 9,5 môn Tin học Vùng tìm kiếm là dãy số: 7,5 8,0 8,5 9,0 9,5 10
Bước 1. Chọn phần tử ở giữa, đó là 8,5. So sánh ta có 9,5 > 8,5, do đó vùng tìm kiếm thu hẹp chỉ còn nửa sau của danh sách.
Bước 2. Chọn phần tử ở giữa, đó là 9,5. So sánh ta có 9,5 = 9,5, tìm thấy giả trị cần tìm nên thuật toán dừng lại.
15.10. Thực hành: Em hãy tìm kiếm thông tin trên Internet để lập bảng danh sách khoảng 10 cuốn sách mà em yêu thích và đơn giá của mỗi cuốn sách. Sau đó thực hiện thuật toán tìm kiếm nhị phân để tìm cuốn sách mà em thích nhất trong danh sách vừa tìm được và cho biết đơn giá của cuốn sách đó.
Đáp án:
Hướng dẫn: