Câu hỏi:
30/11/2024 49Độ phức tạp thời gian của thuật toán sắp xếp chọn SelectionSort(A) là gì?
a) O(1)O(1)O(1)
b) O(n)O(n)O(n)
c) O(nlogn)
d) O(n2)O(n^2)O(n2)
Sách mới 2k7: Tổng ôn Toán, Lí, Hóa, Văn, Sử, Địa…. kỳ thi tốt nghiệp THPT Quốc gia 2025, đánh giá năng lực (chỉ từ 110k).
Quảng cáo
Trả lời:
a) Sai. O(1)O(1)O(1) là độ phức tạp hằng số, không phù hợp cho thuật toán sắp xếp do thời gian chạy phụ thuộc vào số lượng phần tử trong mảng.
b) Sai. O(n)O(n)O(n) là độ phức tạp của thuật toán sắp xếp có tính tuyến tính, không phải là sắp xếp chọn vì thuật toán này có hai vòng lặp lồng nhau.
c) Sai. O(nlogn)O(n \log n)O(nlogn) là độ phức tạp thời gian của các thuật toán sắp xếp hiệu quả hơn như sắp xếp nhanh (Quick Sort) hoặc sắp xếp trộn (Merge Sort). Tuy nhiên, Selection Sort có độ phức tạp cao hơn do hai vòng lặp lồng nhau.
d) Đúng. Trong Selection Sort, với mỗi lần lặp ngoài, một phần tử nhỏ nhất từ các phần tử còn lại trong mảng sẽ được tìm thấy và đưa vào vị trí thích hợp. Quá trình tìm kiếm phần tử nhỏ nhất tốn O(n)O(n)O(n), và thực hiện nnn lần nên tổng thời gian là O(n2)O(n^2)O(n2).
CÂU HỎI HOT CÙNG CHỦ ĐỀ
Câu 1:
Độ phức tạp thời gian của thuật toán sắp xếp nổi bọt BubbleSort(A) là:
Câu 2:
Độ phức tạp thời gian của thuật toán sắp xếp chọn SelectionSort(A) là:
Câu 3:
PHẦN III. Câu trả lời ngắn. Thí sinh trả lời từ câu 1 đến câu 3
Độ phức tạp thời gian của thuật toán tìm kiếm tuần tự LinearSearch là gì và tại sao?
Câu 4:
Độ phức tạp thời gian của thuật toán sắp xếp chọn SelectionSort là gì và tại sao?
Câu 5:
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)
Câu 6:
Giả sử mỗi phép tính tốn một micro giây, giá trị lớn nhất của n mà thuật toán tìm kiếm tuần tự có thể thực hiện trong một giây là bao nhiêu?
về câu hỏi!