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ễ

Thuật toán sắp xếp nào chọn một pivot và phân hoạch mảng thành các phần tử nhỏ hơn và lớn hơn?

  1. AQuicksort
  2. BSắp xếp nổi bọt
  3. CSắp xếp trộn
  4. DSắp xếp chèn
2.Dễ

Tìm kiếm nhị phân đòi hỏi gì ở đầu vào của nó?

  1. AĐộ dài mảng phải là lũy thừa của hai
  2. BMảng chỉ được chứa số dương
  3. CMảng không được có quá 1000 phần tử
  4. DMảng phải được sắp xếp
3.Dễ

Thời gian chạy trong trường hợp trung bình mô tả điều gì?

  1. AThời gian trên loại máy tính phổ biến nhất
  2. BThời gian kỳ vọng trên một phân phối cho trước của các đầu vào kích thước n
  3. CThời gian cho một đầu vào có độ dài trung bình
  4. DGiá trị ở giữa thời gian chạy trường hợp tốt nhất và trường hợp xấu nhất
4.Trung bình

Độ phức tạp thời gian của Fibonacci đệ quy ngây thơ (fib(n) = fib(n−1) + fib(n−2)) là:

  1. AHàm mũ
  2. BLogarit
  3. CTuyến tính
  4. DHằng số
5.Trung bình

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

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

Độ phức tạp thời gian của thuật toán quy hoạch động chuẩn cho dãy con chung dài nhất của các chuỗi có độ dài m và n là gì?

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

Phát biểu nào về ký hiệu little-o là đúng?

  1. An = o(n²), nhưng n không phải o(n)
  2. Bn = o(n), vì mọi hàm đều là little-o của chính nó
  3. Cn² = o(n)
  4. D2n = o(n), vì 2n tăng chậm
8.Khó

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

  1. AMộ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
  2. BKhô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
  3. CMọi chương trình cuối cùng đều dừng
  4. DNên tránh các vòng lặp

Đáp án

  1. 1. A · Quicksort
  2. 2. D · Mảng phải được sắp xếp
  3. 3. B · Thời gian kỳ vọng trên một phân phối cho trước của các đầu vào kích thước n
  4. 4. A · Hàm mũ
  5. 5. C · O(2ⁿ)
  6. 6. B · O(mn)
  7. 7. A · n = o(n²), nhưng n không phải o(n)
  8. 8. B · 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

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