Đề 10 – Bài tập, đề thi trắc nghiệm online Cấu trúc dữ liệu và giải thuật

Đề 10 - Bài tập, đề thi trắc nghiệm online Cấu trúc dữ liệu và giải thuật

1. Thuật toán Floyd-Warshall được sử dụng để làm gì?
2. Ưu điểm chính của danh sách liên kết so với mảng là gì?
3. Trong cây nhị phân tìm kiếm, thứ tự duyệt nào cho phép in ra các nút theo thứ tự tăng dần?
4. Thuật toán sắp xếp nào hoạt động tốt nhất trên dữ liệu đã gần như được sắp xếp?
5. Trong đồ thị, thuật toán BFS (Breadth-First Search) thường được sử dụng để làm gì?
6. Cấu trúc dữ liệu nào hoạt động theo nguyên tắc LIFO (Last In, First Out)?
7. Mục đích chính của việc sử dụng cấu trúc dữ liệu là gì?
8. Cấu trúc dữ liệu nào cho phép truy cập phần tử ngẫu nhiên với độ phức tạp thời gian O(1)?
9. Kiểu dữ liệu trừu tượng (ADT) nào mô tả một tập hợp các phần tử mà việc thêm và xóa chỉ xảy ra ở một đầu?
10. Trong cây nhị phân tìm kiếm, thao tác nào sau đây có độ phức tạp thời gian trung bình là O(log n)?
11. Độ phức tạp thời gian trường hợp xấu nhất của thuật toán tìm kiếm tuyến tính trong một mảng có kích thước n là bao nhiêu?
12. Trong cây nhị phân, nút gốc (root node) là gì?
13. Trong thuật toán sắp xếp nhanh (Quick Sort), thao tác `phân vùng` (partition) làm gì?
14. Độ phức tạp không gian của thuật toán sắp xếp trộn (Merge Sort) là bao nhiêu?
15. Thuật toán sắp xếp nào có độ phức tạp thời gian tốt nhất trong trường hợp xấu nhất là O(n log n)?
16. Cấu trúc dữ liệu nào sau đây là phi tuyến tính?
17. Trong ngữ cảnh Cấu trúc dữ liệu, thuật ngữ `ADT` đề cập đến điều gì?
18. Thuật toán Dijkstra được sử dụng để làm gì?
19. Cấu trúc dữ liệu nào thường được sử dụng để kiểm tra dấu ngoặc đúng trong biểu thức?
20. Ưu điểm chính của cây tìm kiếm nhị phân cân bằng (ví dụ: AVL tree, Red-Black tree) so với cây nhị phân tìm kiếm không cân bằng là gì?
21. Cấu trúc dữ liệu nào thích hợp nhất để biểu diễn mối quan hệ `cha-con` trong dữ liệu phân cấp?
22. Thuật toán Kruskal được sử dụng để làm gì?
23. Hash table (Bảng băm) sử dụng hàm băm để làm gì?
24. Độ phức tạp thời gian của thao tác chèn phần tử vào đầu danh sách liên kết đơn là bao nhiêu?
25. Ứng dụng phổ biến của hàng đợi (Queue) là gì?
26. Khi nào thì nên sử dụng bảng băm (Hash table) thay vì cây tìm kiếm nhị phân?
27. Cấu trúc dữ liệu nào thường được sử dụng để cài đặt hàng đợi ưu tiên?
28. Thuật toán nào sau đây là một ví dụ của kỹ thuật `chia để trị` (Divide and Conquer)?
29. Trong ngữ cảnh đồ thị, chu trình (cycle) là gì?
30. Thuật toán sắp xếp nào sau đây có độ phức tạp thời gian trung bình là O(n log n)?