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

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

1. 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)?
2. Cấu trúc dữ liệu nào sau đây thường được sử dụng để triển khai thuật toán duyệt đồ thị theo chiều rộng (BFS)?
3. Cấu trúc dữ liệu nào sau đây phù hợp nhất để kiểm tra xem một chuỗi có phải là palindrome hay không?
4. Độ phức tạp thời gian của thuật toán tìm kiếm nhị phân (binary search) trong trường hợp tốt nhất là bao nhiêu?
5. Cấu trúc dữ liệu nào sau đây sử dụng con trỏ để liên kết các phần tử?
6. Phương pháp tiếp cận 'chia để trị' (divide and conquer) được sử dụng trong thuật toán nào sau đây?
7. Độ phức tạp thời gian của thuật toán Bubble Sort trong trường hợp xấu nhất là gì?
8. Thuật toán sắp xếp nào sau đây có độ phức tạp thời gian tốt nhất là O(n)?
9. Trong thuật toán Dijkstra, cấu trúc dữ liệu nào thường được sử dụng để lưu trữ khoảng cách từ nút nguồn đến các nút khác?
10. Trong cây tìm kiếm nhị phân (binary search tree), thứ tự duyệt nào sau đây sẽ in ra các nút theo thứ tự tăng dần?
11. Trong cấu trúc dữ liệu đồ thị, một cạnh (edge) nối một nút với chính nó được gọi là gì?
12. Trong cấu trúc dữ liệu đồ thị (graph), thuật ngữ nào sau đây mô tả một đường đi đi qua mỗi cạnh đúng một lần?
13. Cấu trúc dữ liệu nào sau đây hoạt động theo nguyên tắc LIFO (Last In, First Out)?
14. Trong thuật toán Quick Sort, kỹ thuật nào được sử dụng để phân vùng mảng?
15. Thuật toán nào sau đây có độ phức tạp thời gian trung bình tốt hơn so với Bubble Sort?
16. Cấu trúc dữ liệu nào sau đây phù hợp nhất để biểu diễn mối quan hệ phân cấp?
17. Độ phức tạp không gian của thuật toán tìm kiếm theo chiều sâu (Depth-First Search - DFS) trên một đồ thị là gì, trong đó V là số đỉnh và E là số cạnh?
18. Độ phức tạp thời gian của thao tác xóa một phần tử khỏi đầu danh sách liên kết đơn (singly linked list) là bao nhiêu?
19. Thuật toán nào sau đây được sử dụng để tìm kiếm một phần tử trong một mảng đã được sắp xếp?
20. Cấu trúc dữ liệu nào sau đây thường được sử dụng để triển khai hàng đợi ưu tiên (priority queue)?
21. Ưu điểm chính của việc sử dụng danh sách liên kết (linked list) so với mảng (array) là gì?
22. Thuật toán nào sau đây có thể được sử dụng để phát hiện chu trình trong một đồ thị?
23. Trong cây AVL, thao tác nào sau đây được sử dụng để duy trì tính cân bằng của cây?
24. Cấu trúc dữ liệu nào sau đây cho phép truy cập ngẫu nhiên (random access) đến các phần tử?
25. Thuật toán nào sau đây thường được sử dụng để tìm cây khung nhỏ nhất (minimum spanning tree) của một đồ thị?
26. Cấu trúc dữ liệu nào sau đây cho phép truy cập các phần tử theo thứ tự FIFO (First In, First Out)?
27. Độ phức tạp không gian của thuật toán Merge Sort là bao nhiêu?
28. Trong cây nhị phân tìm kiếm (binary search tree), thao tác nào sau đây có độ phức tạp thời gian trung bình là O(log n)?
29. Thuật toán nào sau đây thường được sử dụng để tìm đường đi ngắn nhất giữa hai nút trong một đồ thị có trọng số âm?
30. Độ phức tạp thời gian của thao tác chèn vào một bảng băm (hash table) trong trường hợp trung bình là bao nhiêu?