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

0

Bạn đã sẵn sàng chưa? 45 phút làm bài bắt đầu!!!

Bạn đã hết giờ làm bài! Xem kết quả các câu hỏi đã làm nhé!!!


Cấu trúc dữ liệu và giải thuật

Đề 2 - Đề thi, câu hỏi 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)?

A. Duyệt cây theo thứ tự trước (preorder traversal)
B. Duyệt cây theo thứ tự sau (postorder traversal)
C. Tìm kiếm một phần tử
D. Duyệt cây theo thứ tự giữa (inorder traversal)

2. Thuật toán nào sau đây được sử dụng để tìm tất cả các thành phần liên thông (connected components) trong một đồ thị?

A. Dijkstra`s Algorithm
B. Prim`s Algorithm
C. Depth-First Search (DFS)
D. Binary Search

3. Thuật toán nào sau đây được sử dụng để tìm cây khung nhỏ nhất (minimum spanning tree) của một đồ thị?

A. Dijkstra`s Algorithm
B. Prim`s Algorithm
C. Depth-First Search (DFS)
D. Breadth-First Search (BFS)

4. Trong một đồ thị vô hướng, số cạnh tối đa có thể có trong một đồ thị có n đỉnh là bao nhiêu?

A. n - 1
B. n
C. n(n - 1) / 2
D. n^2

5. Độ phức tạp thời gian của thuật toán Insertion Sort trong trường hợp tốt nhất là bao nhiêu?

A. O(1)
B. O(log n)
C. O(n)
D. O(n^2)

6. Trong lập trình động (dynamic programming), kỹ thuật nào sau đây được sử dụng để tránh tính toán lại các bài toán con đã được giải?

A. Recursion
B. Memoization
C. Greedy Approach
D. Divide and Conquer

7. Độ phức tạp thời gian của thuật toán Heap Sort là bao nhiêu?

A. O(n)
B. O(n^2)
C. O(n log n)
D. O(log n)

8. Cấu trúc dữ liệu nào sau đây hoạt động theo nguyên tắc LIFO (Last In, First Out)?

A. Queue
B. Linked List
C. Stack
D. Tree

9. Độ 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à bao nhiêu?

A. O(n)
B. O(log n)
C. O(n log n)
D. O(n^2)

10. Thuật toán nào sau đây là một thuật toán tham lam (greedy algorithm)?

A. Dijkstra`s algorithm
B. Breadth-First Search (BFS)
C. Depth-First Search (DFS)
D. Binary Search

11. Trong cây nhị phân tìm kiếm (binary search tree), thao tác nào sau đây luôn có độ phức tạp thời gian là O(h), với h là chiều cao của cây?

A. Duyệt cây theo thứ tự trước (preorder traversal)
B. Duyệt cây theo thứ tự sau (postorder traversal)
C. Tìm kiếm một phần tử
D. Duyệt cây theo thứ tự giữa (inorder traversal)

12. Trong cây nhị phân hoàn chỉnh (complete binary tree), chiều cao tối thiểu của cây với n nút là bao nhiêu?

A. log₂n
B. n
C. n/2
D. log₂(n+1) - 1

13. 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 (Breadth-First Search)?

A. Stack
B. Queue
C. Linked List
D. Tree

14. Thuật toán sắp xếp nào sau đây có độ phức tạp thời gian ổn định (stable sorting algorithm)?

A. Quick Sort
B. Heap Sort
C. Selection Sort
D. Insertion Sort

15. Độ phức tạp không gian của thuật toán Merge Sort là bao nhiêu?

A. O(1)
B. O(log n)
C. O(n)
D. O(n log n)

16. Cấu trúc dữ liệu nào sau đây cho phép chèn và xóa các phần tử ở cả hai đầu?

A. Stack
B. Queue
C. Deque (Double-Ended Queue)
D. Linked List

17. Cấu trúc dữ liệu nào sau đây sử dụng hai con trỏ (next và prev) để liên kết các phần tử?

A. Singly Linked List
B. Doubly Linked List
C. Circular Linked List
D. Array

18. Cấu trúc dữ liệu nào sau đây thường được sử dụng để triển khai bảng băm (hash table)?

A. Linked List
B. Array
C. Tree
D. Graph

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?

A. Linear Search
B. Binary Search
C. Depth-First Search (DFS)
D. Breadth-First Search (BFS)

20. 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)?

A. Bubble Sort
B. Insertion Sort
C. Selection Sort
D. Merge Sort

21. Trong cây, thuật ngữ nào sau đây dùng để chỉ một nút không có nút con?

A. Root
B. Parent
C. Child
D. Leaf

22. 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ử?

A. Linked List
B. Queue
C. Stack
D. Array

23. Độ phức tạp thời gian của thuật toán tìm kiếm tuyến tính (linear search) trong trường hợp xấu nhất là bao nhiêu?

A. O(1)
B. O(log n)
C. O(n)
D. O(n^2)

24. Trong đồ thị, thuật toán nào sau đây được sử dụng để tìm đường đi ngắn nhất giữa hai đỉnh?

A. Depth-First Search (DFS)
B. Breadth-First Search (BFS)
C. Dijkstra`s Algorithm
D. Prim`s Algorithm

25. Thuật toán sắp xếp nào sau đây thường được sử dụng để sắp xếp các mảng lớn vì tính hiệu quả của nó?

A. Bubble Sort
B. Insertion Sort
C. Quick Sort
D. Selection Sort

26. Cấu trúc dữ liệu nào sau đây phù hợp nhất để kiểm tra xem một biểu thức toán học có cân bằng dấu ngoặc hay không?

A. Queue
B. Linked List
C. Stack
D. Tree

27. 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)?

A. Linked List
B. Stack
C. Heap
D. Binary Search Tree

28. Độ 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?

A. O(n)
B. O(log n)
C. O(1)
D. O(n^2)

29. Kỹ thuật lập trình nào sau đây sử dụng hàm tự gọi lại chính nó?

A. Iteration
B. Recursion
C. Dynamic Programming
D. Greedy Algorithm

30. Cấu trúc dữ liệu nào sau đây hoạt động theo nguyên tắc FIFO (First In, First Out)?

A. Stack
B. Queue
C. Linked List
D. Tree

1 / 30

Category: Cấu trúc dữ liệu và giải thuật

Tags: Bộ đề 2

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 / 30

Category: Cấu trúc dữ liệu và giải thuật

Tags: Bộ đề 2

2. Thuật toán nào sau đây được sử dụng để tìm tất cả các thành phần liên thông (connected components) trong một đồ thị?

3 / 30

Category: Cấu trúc dữ liệu và giải thuật

Tags: Bộ đề 2

3. Thuật toán nào sau đây được sử dụng để tìm cây khung nhỏ nhất (minimum spanning tree) của một đồ thị?

4 / 30

Category: Cấu trúc dữ liệu và giải thuật

Tags: Bộ đề 2

4. Trong một đồ thị vô hướng, số cạnh tối đa có thể có trong một đồ thị có n đỉnh là bao nhiêu?

5 / 30

Category: Cấu trúc dữ liệu và giải thuật

Tags: Bộ đề 2

5. Độ phức tạp thời gian của thuật toán Insertion Sort trong trường hợp tốt nhất là bao nhiêu?

6 / 30

Category: Cấu trúc dữ liệu và giải thuật

Tags: Bộ đề 2

6. Trong lập trình động (dynamic programming), kỹ thuật nào sau đây được sử dụng để tránh tính toán lại các bài toán con đã được giải?

7 / 30

Category: Cấu trúc dữ liệu và giải thuật

Tags: Bộ đề 2

7. Độ phức tạp thời gian của thuật toán Heap Sort là bao nhiêu?

8 / 30

Category: Cấu trúc dữ liệu và giải thuật

Tags: Bộ đề 2

8. Cấu trúc dữ liệu nào sau đây hoạt động theo nguyên tắc LIFO (Last In, First Out)?

9 / 30

Category: Cấu trúc dữ liệu và giải thuật

Tags: Bộ đề 2

9. Độ 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à bao nhiêu?

10 / 30

Category: Cấu trúc dữ liệu và giải thuật

Tags: Bộ đề 2

10. Thuật toán nào sau đây là một thuật toán tham lam (greedy algorithm)?

11 / 30

Category: Cấu trúc dữ liệu và giải thuật

Tags: Bộ đề 2

11. Trong cây nhị phân tìm kiếm (binary search tree), thao tác nào sau đây luôn có độ phức tạp thời gian là O(h), với h là chiều cao của cây?

12 / 30

Category: Cấu trúc dữ liệu và giải thuật

Tags: Bộ đề 2

12. Trong cây nhị phân hoàn chỉnh (complete binary tree), chiều cao tối thiểu của cây với n nút là bao nhiêu?

13 / 30

Category: Cấu trúc dữ liệu và giải thuật

Tags: Bộ đề 2

13. 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 (Breadth-First Search)?

14 / 30

Category: Cấu trúc dữ liệu và giải thuật

Tags: Bộ đề 2

14. Thuật toán sắp xếp nào sau đây có độ phức tạp thời gian ổn định (stable sorting algorithm)?

15 / 30

Category: Cấu trúc dữ liệu và giải thuật

Tags: Bộ đề 2

15. Độ phức tạp không gian của thuật toán Merge Sort là bao nhiêu?

16 / 30

Category: Cấu trúc dữ liệu và giải thuật

Tags: Bộ đề 2

16. Cấu trúc dữ liệu nào sau đây cho phép chèn và xóa các phần tử ở cả hai đầu?

17 / 30

Category: Cấu trúc dữ liệu và giải thuật

Tags: Bộ đề 2

17. Cấu trúc dữ liệu nào sau đây sử dụng hai con trỏ (next và prev) để liên kết các phần tử?

18 / 30

Category: Cấu trúc dữ liệu và giải thuật

Tags: Bộ đề 2

18. Cấu trúc dữ liệu nào sau đây thường được sử dụng để triển khai bảng băm (hash table)?

19 / 30

Category: Cấu trúc dữ liệu và giải thuật

Tags: Bộ đề 2

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 / 30

Category: Cấu trúc dữ liệu và giải thuật

Tags: Bộ đề 2

20. 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)?

21 / 30

Category: Cấu trúc dữ liệu và giải thuật

Tags: Bộ đề 2

21. Trong cây, thuật ngữ nào sau đây dùng để chỉ một nút không có nút con?

22 / 30

Category: Cấu trúc dữ liệu và giải thuật

Tags: Bộ đề 2

22. 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ử?

23 / 30

Category: Cấu trúc dữ liệu và giải thuật

Tags: Bộ đề 2

23. Độ phức tạp thời gian của thuật toán tìm kiếm tuyến tính (linear search) trong trường hợp xấu nhất là bao nhiêu?

24 / 30

Category: Cấu trúc dữ liệu và giải thuật

Tags: Bộ đề 2

24. Trong đồ thị, thuật toán nào sau đây được sử dụng để tìm đường đi ngắn nhất giữa hai đỉnh?

25 / 30

Category: Cấu trúc dữ liệu và giải thuật

Tags: Bộ đề 2

25. Thuật toán sắp xếp nào sau đây thường được sử dụng để sắp xếp các mảng lớn vì tính hiệu quả của nó?

26 / 30

Category: Cấu trúc dữ liệu và giải thuật

Tags: Bộ đề 2

26. Cấu trúc dữ liệu nào sau đây phù hợp nhất để kiểm tra xem một biểu thức toán học có cân bằng dấu ngoặc hay không?

27 / 30

Category: Cấu trúc dữ liệu và giải thuật

Tags: Bộ đề 2

27. 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)?

28 / 30

Category: Cấu trúc dữ liệu và giải thuật

Tags: Bộ đề 2

28. Độ 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?

29 / 30

Category: Cấu trúc dữ liệu và giải thuật

Tags: Bộ đề 2

29. Kỹ thuật lập trình nào sau đây sử dụng hàm tự gọi lại chính nó?

30 / 30

Category: Cấu trúc dữ liệu và giải thuật

Tags: Bộ đề 2

30. Cấu trúc dữ liệu nào sau đây hoạt động theo nguyên tắc FIFO (First In, First Out)?