1.Dễ
Sắp xếp trộn chuẩn dựa trên mảng dùng thêm bao nhiêu bộ nhớ?
- AO(log n)
- BO(n²)
- CO(1)
- DO(n)
2.Dễ
Độ phức tạp thời gian của tìm kiếm tuần tự trong một mảng chưa sắp xếp gồm n phần tử (trường hợp xấu nhất) là gì?
- AO(n²)
- BO(log n)
- CO(n)
- DO(1)
3.Dễ
Big O của 3n² + 5n + 2 là gì?
- AO(n³)
- BO(3n²)
- CO(5n)
- DO(n²)
4.Trung bình
Thuật toán nào tìm đường đi ngắn nhất từ một nguồn trong đồ thị có trọng số cạnh không âm?
- ABắt buộc phải dùng Bellman–Ford trong mọi trường hợp
- BTìm kiếm theo chiều sâu
- CThuật toán Dijkstra
- DThuật toán Kruskal
5.Trung bình
Bạn sắp xếp một mảng n phần tử một lần rồi trả lời k truy vấn thuộc về bằng tìm kiếm nhị phân. Tổng chi phí là bao nhiêu?
- AO(n + k)
- BO(nk)
- CO(k n log n)
- DO(n log n + k log n)
6.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à:
- AHằng số
- BHàm mũ
- CLogarit
- DTuyến tính
7.Khó
Phải chứng minh hai điều nào để chứng tỏ một bài toán quyết định X là NP-đầy đủ?
- AX không có thuật toán đa thức, và X quyết định được
- BX thuộc P, và X quy dẫn về SAT
- CX quy dẫn về một bài toán trong P, và X thuộc NP
- DX thuộc NP, và một bài toán NP-đầy đủ đã biết quy dẫn về X trong thời gian đa thức
8.Khó
Bài toán người bán hàng rong được phân loại thế nào?
- ANó thuộc P vì thuật toán Dijkstra giải được nó bằng cách thăm mỗi thành phố một lần
- BPhiên bản quyết định là NP-đầy đủ và phiên bản tối ưu hóa là NP-khó
- CNó bất khả quyết định
- DPhiên bản quyết định thuộc P nhưng phiên bản tối ưu hóa là NP-đầy đủ
Đáp án
- 1. D · O(n)
- 2. C · O(n)
- 3. D · O(n²)
- 4. C · Thuật toán Dijkstra
- 5. D · O(n log n + k log n)
- 6. B · Hàm mũ
- 7. D · X thuộc NP, và một bài toán NP-đầy đủ đã biết quy dẫn về X trong thời gian đa thức
- 8. B · Phiên bản quyết định là NP-đầy đủ và phiên bản tối ưu hóa là NP-khó
Lời giải đầy đủ từng bước: hãy luyện chủ đề này trên examproblems.com.