Trắc nghiệm Tin học 11 Cánh diều KHMT bài 8 Lập trình một số thuật toán sắp xếp

Trắc nghiệm Tin học 11 Cánh diều KHMT bài 8 Lập trình một số thuật toán sắp xếp

1. Trong thuật toán sắp xếp nhanh (Quick Sort), bước quan trọng nhất để đạt hiệu quả cao là gì?
2. Độ phức tạp thời gian trong trường hợp xấu nhất của thuật toán sắp xếp chọn (Selection Sort) là bao nhiêu?
3. Thuật toán sắp xếp nào có ưu điểm là không cần thêm bộ nhớ phụ đáng kể (in-place sorting)?
4. Trong thuật toán sắp xếp chọn (Selection Sort), mục đích của mỗi vòng lặp ngoài là gì?
5. Độ phức tạp thời gian của thuật toán sắp xếp nổi bọt (Bubble Sort) là bao nhiêu trong trường hợp xấu nhất?
6. Trong thuật toán sắp xếp nổi bọt cải tiến (Optimized Bubble Sort), làm thế nào để xác định xem mảng đã được sắp xếp hay chưa để dừng sớm?
7. Độ phức tạp thời gian trung bình của thuật toán sắp xếp nhanh (Quick Sort) là bao nhiêu?
8. Khi so sánh thuật toán sắp xếp nổi bọt (Bubble Sort) và sắp xếp chèn (Insertion Sort), thuật toán nào thường được coi là kém hiệu quả hơn trên các tập dữ liệu lớn không có cấu trúc?
9. Trong thuật toán sắp xếp vun đống (Heap Sort), sau khi phần tử lớn nhất được chuyển ra khỏi đống, làm thế nào để duy trì tính chất đống?
10. Độ phức tạp thời gian của thuật toán sắp xếp chọn (Selection Sort) là bao nhiêu trong trường hợp tốt nhất?
11. Độ phức tạp thời gian trong trường hợp tốt nhất của thuật toán sắp xếp vun đống (Heap Sort) là bao nhiêu?
12. Thuật toán sắp xếp nào sau đây có thể sử dụng phân hoạch (partitioning) để chia mảng thành các phần nhỏ hơn và sắp xếp chúng một cách đệ quy?
13. Mục tiêu chính của việc vun đống (heapify) trong thuật toán sắp xếp vun đống (Heap Sort) là gì?
14. Trong thuật toán sắp xếp chèn (Insertion Sort), mỗi phần tử của mảng được xem xét như thế nào?
15. Phát biểu nào mô tả chính xác nhất cách thuật toán sắp xếp vun đống (Heap Sort) sử dụng cấu trúc dữ liệu đống (heap)?
16. Trong thuật toán sắp xếp nhanh (Quick Sort), khái niệm phần tử chốt (pivot) được sử dụng để làm gì?
17. Trong thuật toán sắp xếp chèn (Insertion Sort), tại sao việc dịch chuyển các phần tử sang phải lại cần thiết?
18. Trong thuật toán sắp xếp nổi bọt (Bubble Sort), phát biểu nào sau đây là đúng về việc hoán đổi vị trí các phần tử?
19. Thuật toán sắp xếp nào sau đây có thể được coi là ổn định (stable sort)?
20. Thuật toán sắp xếp nào sau đây có thể có độ phức tạp thời gian O(n^2) trong trường hợp xấu nhất nhưng lại có thể đạt O(n) trong trường hợp tốt nhất?
21. Phát biểu nào sau đây mô tả đúng về thuật toán sắp xếp nổi bọt (Bubble Sort)?
22. Trong thuật toán sắp xếp chèn (Insertion Sort), nếu chúng ta đang chèn phần tử thứ k, số lần so sánh tối đa có thể xảy ra là bao nhiêu?
23. Trong thuật toán sắp xếp nhanh (Quick Sort), nếu phần tử chốt (pivot) luôn được chọn là phần tử nhỏ nhất hoặc lớn nhất trong phạm vi hiện tại, điều gì sẽ xảy ra với hiệu suất của thuật toán?
24. Thuật toán sắp xếp nào sau đây có xu hướng hiệu quả hơn khi mảng đã gần được sắp xếp?
25. Độ phức tạp thời gian của thuật toán sắp xếp vun đống (Heap Sort) là bao nhiêu trong trường hợp xấu nhất?