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ễ

Sắp xếp trộn dùng chiến lược thiết kế nào?

  1. AChia để trị
  2. BLựa chọn tham lam
  3. CVét cạn
  4. DQuy hoạch động
2.Dễ

Độ phức tạp thời gian của việc tìm giá trị lớn nhất trong một mảng chưa sắp xếp gồm n số là gì?

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

Độ phức tạp thời gian của tìm kiếm nhị phân trên một mảng đã sắp xếp là gì?

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

Một bài toán có cấu trúc con tối ưu nghĩa là gì?

  1. AMột lời giải tối ưu có thể được xây dựng từ các lời giải tối ưu của các bài toán con
  2. BBài toán có đúng một lời giải tối ưu, và mọi bài toán con đều dùng chung lời giải đó
  3. CBài toán có thể giải trong thời gian hằng số
  4. DMọi bài toán con đều có cùng kích thước
5.Trung bình

Phát biểu nào về một hàm đệ quy không có trường hợp cơ sở nào đạt tới được là đúng?

  1. ANó tự động trả về 0
  2. BTrình biên dịch luôn biến nó thành một vòng lặp kết thúc an toàn
  3. CNó cứ gọi chính nó cho đến khi ngăn xếp lời gọi bị tràn
  4. DNó chạy trong thời gian O(1)
6.Trung bình

Thuật toán Floyd–Warshall tính gì, và nhanh đến mức nào?

  1. AMột cây khung nhỏ nhất trong O(E log V)
  2. BĐường đi ngắn nhất giữa mọi cặp đỉnh trong O(V³)
  3. CMột thứ tự tô-pô trong O(V²)
  4. DĐường đi ngắn nhất từ một đỉnh nguồn đến mọi đỉnh khác trong O(V + E)
7.Khó

Bài toán dừng cho thấy rằng:

  1. AKhông thuật toán nào có thể quyết định, với mọi chương trình và đầu vào, liệu nó có dừng hay không
  2. BMọi chương trình cuối cùng đều dừng
  3. CMột số chương trình chạy nhanh hơn trên máy tính nhanh hơn, nên việc dừng phụ thuộc vào phần cứng
  4. DNên tránh các vòng lặp
8.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²)
  3. CΘ(n log² n)
  4. DΘ(n log n)

Đáp án

  1. 1. A · Chia để trị
  2. 2. B · O(n)
  3. 3. D · O(log n)
  4. 4. A · Một lời giải tối ưu có thể được xây dựng từ các lời giải tối ưu của các bài toán con
  5. 5. C · Nó cứ gọi chính nó cho đến khi ngăn xếp lời gọi bị tràn
  6. 6. B · Đường đi ngắn nhất giữa mọi cặp đỉnh trong O(V³)
  7. 7. A · Không thuật toán nào có thể quyết định, với mọi chương trình và đầu vào, liệu nó có dừng hay không
  8. 8. C · Θ(n log² n)

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