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

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

1. 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)?
2. Trong đồ thị vô hướng (Undirected Graph), bậc của một đỉnh là gì?
3. Giải thuật nào sau đây là một ví dụ của kỹ thuật `chia để trị` (Divide and Conquer)?
4. Trong biểu đồ (Graph), thuật toán nào sau đây được sử dụng để tìm đường đi ngắn nhất giữa hai đỉnh trong đồ thị có trọng số không âm?
5. Cấu trúc dữ liệu nào sau đây thường được sử dụng để cài đặt bộ nhớ cache?
6. Giải thuật sắp xếp nào sau đây có độ phức tạp thời gian trường hợp xấu nhất là O(n^2) và thường không được khuyến khích sử dụng cho dữ liệu lớn?
7. Trong cây nhị phân cân bằng (ví dụ: cây AVL), mục đích của việc cân bằng cây là gì?
8. Trong lập trình động (Dynamic Programming), kỹ thuật `ghi nhớ` (memoization) là gì?
9. Hash collision (xung đột băm) xảy ra khi nào trong bảng băm?
10. Thuật toán duyệt đồ thị theo chiều rộng (BFS) thường sử dụng cấu trúc dữ liệu nào để quản lý các đỉnh cần duyệt?
11. Trong thuật toán tô màu đồ thị (Graph Coloring), mục tiêu là gì?
12. 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) và thường được sử dụng trong thực tế vì hiệu suất tốt?
13. Khi nào nên sử dụng hàng đợi ưu tiên (Priority Queue) thay vì hàng đợi thông thường (Queue)?
14. 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ử với độ phức tạp thời gian O(1)?
15. Trong thuật toán sắp xếp trộn (Merge Sort), quá trình `trộn` (merge) có vai trò gì?
16. Cấu trúc dữ liệu nào sau đây thường được sử dụng để triển khai thuật toán Dijkstra?
17. Thuật toán Prim và Kruskal được sử dụng để giải quyết bài toán nào?
18. Thuật toán sắp xếp nào sau đây hoạt động tốt nhất (độ phức tạp thời gian gần như O(n)) khi dữ liệu đầu vào gần như đã được sắp xếp?
19. Đệ quy (Recursion) là gì trong lập trình?
20. Độ phức tạp thời gian tốt nhất của thuật toán tìm kiếm nhị phân (Binary Search) là:
21. Ứng dụng nào sau đây không phải là ứng dụng phổ biến của đồ thị (Graph)?
22. Cây khung tối thiểu (Minimum Spanning Tree - MST) của một đồ thị liên thông có trọng số là gì?
23. Trong cây tìm kiếm nhị phân (Binary Search Tree), thứ tự duyệt nào sau đây sẽ cho ra các nút theo thứ tự tăng dần?
24. Độ phức tạp không gian của thuật toán sắp xếp chèn (Insertion Sort) là:
25. Ưu điểm chính của danh sách liên kết đôi (Doubly Linked List) so với danh sách liên kết đơn (Singly Linked List) là gì?
26. Giải thuật nào sau đây được sử dụng để tìm kiếm một mẫu (pattern) trong một chuỗi văn bản (text)?
27. Cấu trúc dữ liệu nào sau đây phù hợp nhất để biểu diễn mối quan hệ `cha-con` trong một hệ thống phân cấp?
28. Cấu trúc dữ liệu nào sau đây hoạt động theo nguyên tắc LIFO (Last In, First Out)?
29. Ưu điểm chính của việc sử dụng thuật toán tìm kiếm nhị phân (Binary Search) so với tìm kiếm tuyến tính (Linear Search) là gì?
30. Độ phức tạp thời gian để chèn một phần tử vào đầu danh sách liên kết đơn (Singly Linked List) là: