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

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

1. Đâu là thuật toán có độ phức tạp thời gian tốt nhất trong trường hợp xấu nhất (worst-case time complexity) trong số các thuật toán sau?
2. Thuật toán sắp xếp nổi bọt (Bubble Sort) thực hiện bao nhiêu lượt so sánh và hoán đổi tối đa trên một mảng có n phần tử?
3. Trong thuật toán sắp xếp vun đống (Heap Sort), sau khi xây dựng max-heap, phần tử lớn nhất của mảng sẽ nằm ở đâu?
4. Trong thuật toán sắp xếp chèn (Insertion Sort), nếu mảng đã được sắp xếp, độ phức tạp thời gian sẽ là bao nhiêu?
5. Đâu là thuật toán sắp xếp có thể được sử dụng để sắp xếp các mảng chứa các giá trị nằm trong một phạm vi nhỏ và biết trước?
6. Khi áp dụng thuật toán sắp xếp vun đống (Heap Sort), cấu trúc dữ liệu nào thường được sử dụng để biểu diễn cây vun đống?
7. Khi sắp xếp một mảng có 10 phần tử, thuật toán sắp xếp chọn (Selection Sort) sẽ thực hiện tối đa bao nhiêu lượt tìm kiếm phần tử nhỏ nhất trong phần chưa sắp xếp?
8. Đâu là mục tiêu chính của việc phân hoạch (partitioning) trong thuật toán sắp xếp nhanh (Quick Sort)?
9. Thuật toán sắp xếp trộn (Merge Sort) có tính chất ổn định (stable sort) hay không?
10. Đâu là ưu điểm chính của thuật toán sắp xếp nhanh (Quick Sort) so với sắp xếp nổi bọt hoặc sắp xếp chọn trong trường hợp mảng lớn?
11. Độ phức tạp thời gian trung bình của thuật toán sắp xếp trộn (Merge Sort) là bao nhiêu?
12. Thuật toán sắp xếp trộn (Merge Sort) thuộc loại thuật toán nào?
13. Đâu là cách lựa chọn chốt (pivot) phổ biến trong thuật toán sắp xếp nhanh (Quick Sort) để giảm thiểu trường hợp xấu nhất?
14. Đâu là đặc điểm chính của thuật toán sắp xếp nổi bọt (Bubble Sort) về cách thức hoạt động?
15. Khi thực hiện thuật toán sắp xếp vun đống (Heap Sort), bước heapify (hoặc sift-down) có vai trò gì?
16. Thuật toán nào trong số các thuật toán sau đây có thể yêu cầu bộ nhớ phụ trợ đáng kể (O(n)) để hoạt động?
17. Trong thuật toán sắp xếp chèn (Insertion Sort), để chèn một phần tử vào đúng vị trí trong mảng con đã sắp xếp, ta thường sử dụng phương pháp nào?
18. Đâu là thuật toán sắp xếp KHÔNG phải là thuật toán sắp xếp dựa trên phép so sánh (comparison sort)?
19. Đâu là nhược điểm chính của thuật toán sắp xếp nhanh (Quick Sort) khi dữ liệu đầu vào có nhiều phần tử trùng lặp?
20. Thuật toán sắp xếp vun đống (Heap Sort) sử dụng hai giai đoạn chính. Giai đoạn đầu tiên là gì?
21. Trong thuật toán sắp xếp chọn (Selection Sort), mỗi bước lặp sẽ đảm bảo điều gì?
22. Khi nào thuật toán sắp xếp nổi bọt (Bubble Sort) tỏ ra hiệu quả nhất?
23. Thuật toán sắp xếp chèn (Insertion Sort) hoạt động dựa trên nguyên tắc nào?
24. Trong thuật toán sắp xếp nhanh (Quick Sort), nếu phần tử chốt được chọn là phần tử nhỏ nhất hoặc lớn nhất trong mảng, điều gì sẽ xảy ra với hiệu suất?
25. Thuật toán sắp xếp chèn (Insertion Sort) có thể được mô tả như thế nào trong thực tế?