Phiếu bài tập Thuật toán và độ phức tạp có đáp án

Phiếu bài tập Thuật toán và độ phức tạp miễn phí để in: 8 bài từ cơ bản đến mức đề thi, kèm đáp án. In ra hoặc lưu thành PDF.

Dành cho giảng viên: miễn phí in, sao chép và sử dụng trên lớp. Mỗi phiếu bài tập mới có số liệu mới và đáp án riêng. Chúng tôi rất cảm ơn nếu bạn đặt liên kết đến ExamProblems trên trang môn học.

Tên: ____________________   Ngày: ____________

1.Dễ

f(n) = Θ(g(n)) có nghĩa là gì?

  1. Af luôn nhỏ hơn g với mọi n, nên g chặn trên f nhưng không bao giờ chặn dưới
  2. Bf tăng chậm hơn g một cách nghiêm ngặt
  3. Cf tăng với cùng tốc độ như g, bị chặn trên và chặn dưới bởi các bội hằng của g
  4. Df tăng nhanh hơn g một cách nghiêm ngặt
2.Dễ

Lớp độ phức tạp nào tăng nhanh nhất khi n lớn?

  1. AO(n³)
  2. BO(n log n)
  3. CO(2ⁿ)
  4. DO(n²)
3.Dễ

Ba bước của một thuật toán chia để trị là gì?

  1. AĐoán, kiểm tra, lặp lại
  2. BĐọc, tính toán, ghi
  3. CChia, trị, kết hợp
  4. DSắp xếp, tìm kiếm, trả về
4.Trung bình

Độ phức tạp thời gian của: for i = 1 to n: (j = 1; while j < n: j = j × 2) là gì?

  1. AO(n log n)
  2. BO(n²)
  3. CO(n)
  4. DO(log n)
5.Trung bình

Vì sao nhiều hàm sắp xếp trong thư viện chuyển sang sắp xếp chèn cho các mảng con rất nhỏ?

  1. ASắp xếp chèn ít chi phí phụ và nhanh trên đầu vào nhỏ hoặc gần như đã sắp xếp
  2. BCác thuật toán đệ quy không xử lý được mảng dưới 10 phần tử
  3. CSắp xếp chèn dùng ít bộ nhớ hơn mọi thuật toán sắp xếp khác trên đầu vào lớn
  4. DSắp xếp chèn là O(n log n) trong trường hợp xấu nhất
6.Trung bình

Công thức truy hồi T(n) = 2T(n/2) + O(1) có nghiệm là gì?

  1. AO(n²)
  2. BO(n)
  3. CO(log n)
  4. DO(n log n)
7.Khó

Công thức truy hồi T(n) = 2T(n/2) + n log n có nghiệm là gì?

  1. AΘ(n)
  2. BΘ(n log n)
  3. CΘ(n log² n)
  4. DΘ(n²)
8.Khó

Đường đi đơn ngắn nhất có thể tìm trong thời gian đa thức. Điều gì được biết về việc tìm đường đi đơn dài nhất giữa hai đỉnh trong đồ thị tổng quát?

  1. ANó luôn giải được trong O(V + E)
  2. BNó là NP-khó
  3. CNó bất khả quyết định
  4. DNó có thể giải bằng thuật toán Dijkstra với trọng số đổi dấu

Đáp án

  1. 1. C · f tăng với cùng tốc độ như g, bị chặn trên và chặn dưới bởi các bội hằng của g
  2. 2. C · O(2ⁿ)
  3. 3. C · Chia, trị, kết hợp
  4. 4. A · O(n log n)
  5. 5. A · Sắp xếp chèn ít chi phí phụ và nhanh trên đầu vào nhỏ hoặc gần như đã sắp xếp
  6. 6. B · O(n)
  7. 7. C · Θ(n log² n)
  8. 8. B · Nó là NP-khó

Lời giải đầy đủ từng bước: hãy luyện chủ đề này trên examproblems.com.