15 câu Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25 có đáp án

Độ phức tạp thời gian của thuật toán tìm kiếm tuần tự LinearSearch(A, K) là gì?a) O(1)b) O(logn)c) O(n)O(n)O(n)d) O(n2)O(n^2)O(n2)

11/15

PHẦN II. Câu trắc nghiệm đúng sai. Thí sinh trả lời từ câu 1 đến câu 2. Trong mỗi ý a), b), c), d) ở mỗi câu, thí sinh chọn đúng hoặc sai

Độ phức tạp thời gian của thuật toán tìm kiếm tuần tự LinearSearch(A, K) là gì?

a) O(1)

b) O(logn)

c) O(n)O(n)O(n)

d) O(n2)O(n^2)O(n2)

0/3000 ký tự
Giải thích

a) Sai. O(1)O(1)O(1) là độ phức tạp hằng số, chỉ xảy ra khi thuật toán không phụ thuộc vào kích thước của mảng, trong khi ở đây thời gian chạy phụ thuộc vào số phần tử của mảng.

b) Sai. O(log⁡n)O(\log n)O(logn) là độ phức tạp của thuật toán tìm kiếm nhị phân, yêu cầu mảng phải được sắp xếp trước. Thuật toán tìm kiếm tuần tự không yêu cầu mảng phải sắp xếp, do đó không có độ phức tạp O(log⁡n)O(\log n)O(logn).

c) Đúng. Với kích thước mảng nnn, trong trường hợp xấu nhất, thuật toán cần duyệt qua toàn bộ mảng (khoảng nnn lần) trước khi tìm thấy phần tử hoặc xác nhận rằng phần tử không có trong mảng. Vì vậy, độ phức tạp thời gian của thuật toán này là O(n)O(n)O(n).

d) Sai. O(n2)O(n^2)O(n2) thường là độ phức tạp của thuật toán với hai vòng lặp lồng nhau, nhưng thuật toán này chỉ có một vòng lặp.