JavaScript is required

Với dữ liệu đầu vào (n) lớn, ta nên sử dụng phương pháp sắp xếp nào sau đây?

A.

Sắp xếp trộn (Merge sort) hoặc Sắp xếp đống(Heap sort)

B.

Sắp xếp đống(Heap sort) hoặc Sắp xếp nhanh(quick sort)

C.

Sắp xếp chọn(selection sort), sắp xếp chèn ( Insert sort)

D.

Sắp xếp nổi bọt ( bubble sort) hoặc Sắp xếp chọn(selection sort)

Trả lời:

Đáp án đúng: B


Khi kích thước dữ liệu (n) lớn, các thuật toán sắp xếp có độ phức tạp thời gian trung bình hoặc tốt nhất là O(n log n) thường được ưu tiên hơn vì chúng có hiệu suất tốt hơn so với các thuật toán có độ phức tạp O(n^2).

Sắp xếp trộn (Merge sort) và Sắp xếp đống (Heap sort) đều có độ phức tạp thời gian O(n log n) trong trường hợp xấu nhất, trung bình và tốt nhất, làm cho chúng phù hợp với dữ liệu lớn. Sắp xếp nhanh (Quick sort) cũng có độ phức tạp trung bình là O(n log n), nhưng trong trường hợp xấu nhất (ví dụ: khi dữ liệu đã được sắp xếp), nó có thể xuống đến O(n^2).

Sắp xếp chọn (Selection sort), sắp xếp chèn (Insert sort) và sắp xếp nổi bọt (Bubble sort) đều có độ phức tạp thời gian O(n^2), do đó không hiệu quả với dữ liệu lớn.

Vậy nên đáp án chính xác nhất là "Sắp xếp trộn (Merge sort) hoặc Sắp xếp đống(Heap sort)"

Đề cương ôn thi với 220 câu trắc nghiệm Cấu trúc dữ liệu và giải thuật có đáp án được chọn lọc và chia sẻ dưới đây, nhằm giúp bạn sinh viên hệ thống kiến thức chuẩn bị cho kì thi sắp diễn ra.


50 câu hỏi 60 phút

Câu hỏi liên quan