NEW
Font size
WorksheetsTIN 7 - BÀI 15 - NHỊ PHÂN
Total questions: 30
Worksheet time: 15mins
Thuật toán tìm kiếm nhị phân yêu cầu dữ liệu phải:
Có kích thước lớn
Được sắp xếp theo thứ tự
Không có phần tử giống nhau
Ghi bằng ngôn ngữ tự nhiên
Bước đầu tiên trong thuật toán tìm kiếm nhị phân là:
Tìm phần tử ở cuối
Tìm phần tử ở đầu
Tìm phần tử ở giữa
So sánh với tất cả phần tử
Khi tìm kiếm nhị phân, nếu phần tử cần tìm nhỏ hơn phần tử giữa, ta:
Chuyển sang bên phải
Chuyển sang bên trái
Kết thúc tìm
Đổi vị trí phần tử
Tìm kiếm nhị phân sử dụng cấu trúc:
Tuần tự
Rẽ nhánh
Lặp
Song song
Thuật toán tìm kiếm nhị phân sẽ kết thúc khi:
Đếm được n phần tử
Tìm được hoặc không còn phần tử nào để tìm
Duyệt hết danh sách
Đếm được phần tử lặp
Trong tìm kiếm nhị phân, nếu phần tử giữa đúng là phần tử cần tìm thì:
Tiếp tục tìm
Tìm sang trái
Tìm sang phải
Kết thúc tìm kiếm
Tìm kiếm nhị phân là hiệu quả hơn tìm kiếm tuần tự vì:
Dễ lập trình
Ít số lần kiểm tra hơn
Dùng ít bộ nhớ
Không cần sắp xếp
Danh sách cần tìm trong tìm kiếm nhị phân phải được:
Đổi vị trí mỗi lần tìm
Gán lại chỉ số
Sắp xếp tăng hoặc giảm
Thêm phần tử mới
Số lượng phần tử giảm đi sau mỗi bước tìm kiếm nhị phân là:
1 phần tử
3 phần tử
Một nửa số phần tử còn lại
Tất cả phần tử
Khi còn 1 phần tử trong vùng tìm kiếm mà không trùng với giá trị cần tìm:
Tìm lại từ đầu
Xoá phần tử đó
Kết thúc và thông báo không tìm thấy
Dừng chương trình
Điều gì xảy ra nếu áp dụng tìm kiếm nhị phân trên danh sách chưa sắp xếp?
Tìm đúng kết quả
Có thể trả về kết quả sai
Tìm nhanh hơn
Không ảnh hưởng
Khi phần tử cần tìm nằm bên phải phần tử giữa, thuật toán sẽ làm gì?
So sánh lại phần tử giữa
Kết thúc tìm kiếm
Chuyển sang nửa phải của danh sách
Sắp xếp lại danh sách
Nếu danh sách có 15 phần tử, bước đầu tiên của tìm kiếm nhị phân là kiểm tra:
Phần tử thứ 15
Phần tử thứ 1
Phần tử thứ 8
Phần tử thứ 7
Tìm kiếm nhị phân là một thuật toán hiệu quả vì:
Sử dụng bộ nhớ ít
Giảm số lần kiểm tra
Không cần điều kiện
Không có vòng lặp
Vì sao tìm kiếm nhị phân nhanh hơn tìm kiếm tuần tự?
Vì dễ viết mã hơn
Vì chỉ xét một nửa danh sách sau mỗi bước
Vì không dùng điều kiện
Vì không cần danh sách
Tìm kiếm nhị phân giúp:
Hiện kết quả sau mỗi bước
Giảm số lượng so sánh cần thiết
Thay đổi danh sách
Tăng độ dài danh sách
Sau mỗi bước tìm kiếm, ta thực hiện việc:
Thêm phần tử vào danh sách
Thu hẹp phạm vi tìm kiếm
Nhập lại danh sách
Thay đổi dữ liệu gốc
Nếu tìm thấy phần tử cần tìm ở bước đầu, thuật toán sẽ:
Tìm tiếp phần tử khác
Kết thúc ngay
Chuyển sang phần tử tiếp theo
Bỏ qua bước này
Thuật toán tìm kiếm nhị phân hoạt động tốt nhất với danh sách:
Ngắn và chưa sắp xếp
Dài và đã sắp xếp
Có số lặp lại
Gồm các chữ cái
Lợi ích lớn nhất của tìm kiếm nhị phân là:
Tìm được phần tử đầu tiên
Nhanh chóng khi danh sách lớn
Không cần nhập dữ liệu
Tìm được nhiều kết quả cùng lúc
Cho danh sách [2, 4, 6, 8, 10, 12, 14], hãy cho biết vị trí phần tử 10 khi tìm bằng tìm kiếm nhị phân?
Vị trí 3
Vị trí 2
Vị trí 4
Vị trí 5
Cho danh sách [A, B, C, D, E, F, G], tìm chữ "F" theo tìm kiếm nhị phân cần bao nhiêu bước (tối đa)?
3
1
2
4
Cho danh sách đã sắp xếp: [3, 6, 9, 12, 15], nếu tìm số 7, kết quả là gì?
Tìm thấy ở vị trí 3
Tìm thấy ở vị trí 2
Không tìm thấy
Tìm thấy ở vị trí 4
Tìm kiếm nhị phân hoạt động thế nào với danh sách có 1 phần tử?
Không hoạt động
So sánh phần tử đó với giá trị cần tìm
Bỏ qua danh sách
Cần thêm phần tử mới
Danh sách nào dưới đây phù hợp để áp dụng tìm kiếm nhị phân?
[5, 3, 2, 4, 1]
[a, z, b, m, y]
[2, 4, 6, 8, 10]
[10, 2, 4, 8, 6]
Cho danh sách tên: [An, Bình, Hòa, Linh, Mai, Phương, Trang, Trúc, Tuệ], tìm "Trúc" cần mấy bước?
4
2
3
1
Sau 1 bước tìm kiếm trong danh sách 10 phần tử, còn lại:
8 phần tử
7 phần tử
5 phần tử
9 phần tử
Nếu danh sách có 31 phần tử, số lần so sánh tối đa là:
6
5
10
8
Tìm kiếm nhị phân trong danh sách 1024 phần tử cần tối đa bao nhiêu lần so sánh?
100
10
512
20
Tìm kiếm nhị phân trên danh sách rỗng:
Lặp mãi không dừng
Kết thúc ngay vì không có gì để tìm
Báo lỗi chương trình
Trả về vị trí 0
