Trắc nghiệm Tin học 11 Kết nối tri thức KHMT bài 19 Bài toán tìm kiếm giúp bạn rèn luyện phản xạ làm bài hiệu quả thông qua kho câu hỏi phong phú.
Trắc nghiệm Tin học 11 Kết nối tri thức KHMT bài 19 Bài toán tìm kiếm
⏱ Thời gian còn lại: --:--
Tiến độ hoàn thành
0/0 câu
🏆 BẢNG VÀNG TOP 5 ĐIỂM TỐT NHẤT
Đang tải bảng xếp hạng...
Câu 1: Trong trường hợp xấu nhất, thuật toán tìm kiếm tuần tự trên dãy có n phần tử phải thực hiện bao nhiêu lần so sánh?
- - 1 lần
- - log2(n) lần
- - n/2 lần
- - n lần
Câu 2: Thuật toán tìm kiếm tuần tự (Sequential Search) bắt đầu so sánh giá trị cần tìm với phần tử nào trong dãy?
- - Phần tử ở giữa dãy
- - Phần tử cuối cùng của dãy
- - Phần tử đầu tiên của dãy
- - Một phần tử bất kỳ được chọn ngẫu nhiên
Câu 3: Trong bài toán tìm kiếm, nếu không tìm thấy giá trị x trong danh sách, hàm tìm kiếm thường trả về giá trị đặc biệt nào?
- - 0
- - 1
- - -1
- - Vị trí cuối cùng
Câu 4: Điều kiện tiên quyết để áp dụng thuật toán tìm kiếm nhị phân là gì?
- - Danh sách phải có ít hơn 10 phần tử
- - Danh sách phải chứa toàn số nguyên dương
- - Danh sách đã được sắp xếp theo một thứ tự nhất định
- - Danh sách không được chứa các giá trị trùng nhau
Câu 5: Trong thuật toán tìm kiếm nhị phân, ở mỗi bước ta so sánh giá trị cần tìm K với phần tử nào?
- - Phần tử đầu tiên của dãy
- - Phần tử cuối cùng của dãy
- - Phần tử ở giữa của dãy đang xét
- - Một phần tử ngẫu nhiên bất kỳ
Câu 6: Độ phức tạp thời gian của thuật toán tìm kiếm nhị phân trong trường hợp xấu nhất là bao nhiêu?
- - O(n)
- - O(log n)
- - O(n log n)
- - O(1)
Câu 7: Nếu một dãy có 1.000.000 phần tử và đã được sắp xếp, số lần so sánh tối đa của tìm kiếm nhị phân khoảng bao nhiêu?
- - 500.000 lần
- - 1.000.000 lần
- - 20 lần
- - 1.000 lần
Câu 8: Trong Python, toán tử 'in' (ví dụ: 'x in A') thực hiện cơ chế tìm kiếm nào đối với một danh sách (list) thông thường?
- - Tìm kiếm nhị phân
- - Tìm kiếm tuần tự
- - Tìm kiếm nội suy
- - Tìm kiếm theo bảng băm
Câu 9: Trong bài toán tìm kiếm, mục tiêu chính là xác định điều gì đối với một giá trị x cho trước trong danh sách?
- - Giá trị trung bình của toàn bộ danh sách
- - Vị trí của giá trị x trong danh sách nếu có tồn tại
- - Số lượng các phần tử lớn hơn x
- - Sắp xếp lại danh sách theo thứ tự tăng dần
Câu 10: Ưu điểm lớn nhất của tìm kiếm nhị phân so với tìm kiếm tuần tự là gì?
- - Dễ cài đặt mã nguồn hơn
- - Hoạt động tốt trên danh sách chưa sắp xếp
- - Tốc độ tìm kiếm nhanh hơn rất nhiều khi danh sách lớn
- - Không tốn bộ nhớ để lưu trữ biến phụ
Câu 11: Kết quả đầu ra (Output) của bài toán tìm kiếm thường là gì?
- - Giá trị lớn nhất trong dãy A
- - Vị trí của phần tử trong dãy bằng x hoặc thông báo không tìm thấy
- - Dãy A sau khi đã loại bỏ x
- - Số lượng các phần tử có trong dãy A
Câu 12: Nếu một danh sách có 16 phần tử, số lần chia đôi tối đa trong tìm kiếm nhị phân là bao nhiêu?
- - 2
- - 4
- - 8
- - 16
Câu 13: Điều gì xảy ra nếu ta áp dụng tìm kiếm nhị phân trên một dãy chưa được sắp xếp?
- - Thuật toán vẫn luôn cho kết quả đúng nhưng chậm hơn
- - Thuật toán có thể cho kết quả sai hoặc không tìm thấy dù x có trong dãy
- - Máy tính sẽ báo lỗi cú pháp ngay lập tức
- - Thuật toán sẽ tự động sắp xếp dãy rồi mới tìm
Câu 14: Mục tiêu chính của bài toán tìm kiếm trong một danh sách là gì?
- - Sắp xếp các phần tử theo thứ tự tăng dần
- - Tìm vị trí của một giá trị x cho trước trong danh sách
- - Xóa các phần tử trùng lặp trong danh sách
- - Tính tổng tất cả các phần tử trong danh sách
Câu 15: Cho dãy A = [10, 20, 30, 40, 50]. Nếu tìm x = 60 bằng tìm kiếm tuần tự, số lần so sánh là bao nhiêu?
- - 5
- - 4
- - 1
- - 0
Câu 16: Trong một dãy đã sắp xếp gồm 1000 phần tử, số lần so sánh tối đa của tìm kiếm nhị phân khoảng bao nhiêu?
- - 500 lần
- - 1000 lần
- - 10 lần
- - 100 lần
Câu 17: Trường hợp tốt nhất của thuật toán tìm kiếm nhị phân xảy ra khi nào?
- - Phần tử cần tìm nằm ở vị trí đầu tiên
- - Phần tử cần tìm nằm ở vị trí cuối cùng
- - Phần tử cần tìm nằm ở chính giữa danh sách
- - Phần tử cần tìm không có trong danh sách
Câu 18: Giả sử danh sách A = [2, 4, 6, 8, 10, 12]. Nếu dùng tìm kiếm tuần tự để tìm K = 10, ta cần bao nhiêu lần so sánh?
- - 2 lần
- - 4 lần
- - 5 lần
- - 6 lần
Câu 19: Thuật toán tìm kiếm tuần tự có thể áp dụng cho loại cấu trúc dữ liệu nào?
- - Chỉ dãy số đã sắp xếp
- - Cả dãy số đã sắp xếp và chưa sắp xếp
- - Chỉ dãy số nguyên
- - Chỉ các danh sách có độ dài dưới 10
Câu 20: Đầu vào (Input) của một bài toán tìm kiếm thông thường bao gồm những thành phần nào?
- - Một danh sách và giá trị cần tìm kiếm
- - Một dãy số đã được sắp xếp và giá trị nhỏ nhất
- - Chỉ duy nhất một danh sách các số thực
- - Vị trí bắt đầu và vị trí kết thúc của dãy
Câu 21: Điều gì sẽ xảy ra nếu ta áp dụng tìm kiếm nhị phân trên một danh sách chưa được sắp xếp?
- - Thuật toán vẫn hoạt động bình thường nhưng chậm hơn
- - Thuật toán có thể trả về kết quả sai hoặc không tìm thấy
- - Máy tính sẽ báo lỗi ngay lập tức
- - Danh sách sẽ tự động được sắp xếp lại trước khi tìm
Câu 22: Sử dụng tìm kiếm tuần tự cho danh sách [1, 4, 2, 8, 5] để tìm x = 2. Có bao nhiêu phép so sánh được thực hiện?
- - 1
- - 2
- - 3
- - 5
Câu 23: Trong thuật toán tìm kiếm nhị phân, nếu giá trị cần tìm x nhỏ hơn giá trị của phần tử giữa (A[mid]), ta sẽ tiếp tục tìm kiếm ở đâu?
- - Nửa sau của dãy (từ mid + 1 đến cuối)
- - Nửa đầu của dãy (từ đầu đến mid - 1)
- - Dừng thuật toán vì không tìm thấy
- - Toàn bộ dãy ban đầu
Câu 24: Tại sao người ta ít sử dụng tìm kiếm nhị phân cho danh sách liên kết (Linked List)?
- - Vì danh sách liên kết không thể sắp xếp được
- - Vì không thể truy cập trực tiếp phần tử ở giữa (mid) với thời gian hằng số
- - Vì danh sách liên kết chỉ chứa các ký tự chữ cái
- - Vì danh sách liên kết luôn có kích thước thay đổi liên tục
Câu 25: Trong Python, từ khóa nào thường được dùng để duyệt qua từng phần tử của danh sách trong tìm kiếm tuần tự?
- - while hoặc for
- - if
- - def
- - return