Bộ đề 1

Câu 1

Đâu là đặc điểm quan trọng nhất của một cấu trúc dữ liệu tốt?

Câu 2

Khi nào nên sử dụng cấu trúc dữ liệu ngăn xếp (stack)?

Câu 3

Đâu là hạn chế của việc sử dụng mảng (array) trong lập trình?

Câu 4

Trong các ký hiệu sau, ký hiệu nào biểu thị tốc độ tăng trưởng chậm nhất?

Câu 5

Mục đích của việc sử dụng Abstract Data Type (ADT) là gì?

Câu 6

Tại sao việc lựa chọn cấu trúc dữ liệu phù hợp lại quan trọng trong thiết kế thuật toán?

Câu 7

O(1) biểu diễn độ phức tạp thời gian như thế nào?

Câu 8

Trong các cấu trúc dữ liệu sau, cấu trúc nào thường được sử dụng để cài đặt thuật toán Dijkstra tìm đường đi ngắn nhất?

Câu 9

Khi nào nên sử dụng thuật toán tìm kiếm nhị phân (binary search) thay vì tìm kiếm tuyến tính (linear search)?

Câu 10

Độ phức tạp thời gian của thuật toán được dùng để đánh giá điều gì?

Câu 11

Sự khác biệt chính giữa cấu trúc dữ liệu tĩnh và cấu trúc dữ liệu động là gì?

Câu 12

Đâu là ưu điểm của việc sử dụng danh sách liên kết (linked list) so với mảng (array)?

Câu 13

Khi nào thì thuật toán tìm kiếm tuyến tính (linear search) là lựa chọn phù hợp?

Câu 14

Trong các cấu trúc dữ liệu sau, cấu trúc nào cho phép truy cập phần tử ở giữa một cách hiệu quả nhất?

Câu 15

Phát biểu nào sau đây mô tả đúng nhất về vai trò của cấu trúc dữ liệu trong lập trình?

Câu 16

Trong các cấu trúc dữ liệu sau, cấu trúc nào thường được sử dụng để cài đặt hàng đợi (queue)?

Câu 17

Đâu là một ứng dụng thực tế của thuật toán sắp xếp?

Câu 18

Đâu là phát biểu đúng về thuật toán?

Câu 19

Trong các độ phức tạp sau, độ phức tạp nào là tốt nhất cho một thuật toán tìm kiếm?

Câu 20

Trong phân tích thuật toán, trường hợp xấu nhất (worst-case) thường được quan tâm nhất vì sao?

Câu 21

Ưu điểm chính của việc sử dụng cấu trúc dữ liệu là gì?

Câu 22

Tại sao cần phải quan tâm đến độ phức tạp không gian của thuật toán?

Câu 23

Ưu điểm của việc sử dụng mã giả (pseudocode) để mô tả thuật toán là gì?

Câu 24

Phương pháp nào sau đây thường được sử dụng để đánh giá hiệu quả của một thuật toán?

Câu 25

Đâu là ví dụ về cấu trúc dữ liệu tuyến tính?

Câu 26

Thuật toán có thể được biểu diễn bằng những cách nào?

Câu 27

Trong các thuật toán sắp xếp sau, thuật toán nào có độ phức tạp trung bình là O(n log n)?

Câu 28

Đâu là nhược điểm chính của thuật toán Bubble Sort?

Câu 29

Phân tích 'Big O' được sử dụng để làm gì?

Câu 30

Đâu là ứng dụng phổ biến của cấu trúc dữ liệu cây (tree)?