1.Dễ
Một phép toán chạy trong thời gian O(1) có nghĩa là gì?
- ANó chỉ có thể chạy một lần
- BThời gian chạy của nó không tăng theo kích thước đầu vào
- CNó luôn mất đúng một giây
- DNó xử lý đúng một phần tử mỗi giây thời gian chạy
2.Dễ
Một thuật toán O(n) mất 3 giây khi n = 1 triệu. Khoảng bao lâu khi n = 2 triệu?
- A12 giây
- B3 giây
- C6 giây
- D9 giây
3.Dễ
Ký hiệu nào mô tả cận dưới của tốc độ tăng?
- Ao (little o)
- BO (Big O)
- CΩ (Big Omega)
- DΘ (Big Theta)
4.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 log n + k log n)
- BO(k n log n)
- CO(n + k)
- DO(nk)
5.Trung bình
Phân tích khấu hao đo lường điều gì?
- AChi phí kỳ vọng trên các đầu vào ngẫu nhiên
- BChi phí của thao tác đơn lẻ tốn kém nhất ở bất kỳ đâu trong chuỗi
- CChi phí trung bình mỗi thao tác trên một chuỗi thao tác xấu nhất
- DChi phí của một thuật toán trên đầu vào tốt nhất
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ũ
- CTuyến tính
- DLogarit
7.Khó
Kỹ thuật nào cho thời gian chạy kỳ vọng O(n log n) của quicksort trên mọi đầu vào?
- ALuôn chọn phần tử đầu tiên
- BChọn pivot đồng đều ngẫu nhiên
- CSắp xếp đầu vào trước khi chạy quicksort
- DChỉ dùng đệ quy ở phía bên trái
8.Khó
Chi phí thời gian và không gian của việc tính số Fibonacci thứ n bằng một vòng lặp chỉ giữ hai giá trị cuối là bao nhiêu?
- AThời gian O(n) và không gian O(n)
- BThời gian O(2ⁿ) và không gian O(1)
- CThời gian O(log n) và không gian O(n)
- DThời gian O(n) và không gian O(1)
Đáp án
- 1. B · Thời gian chạy của nó không tăng theo kích thước đầu vào
- 2. C · 6 giây
- 3. C · Ω (Big Omega)
- 4. A · O(n log n + k log n)
- 5. C · Chi phí trung bình mỗi thao tác trên một chuỗi thao tác xấu nhất
- 6. B · Hàm mũ
- 7. B · Chọn pivot đồng đều ngẫu nhiên
- 8. D · Thời gian O(n) và không gian O(1)
Lời giải đầy đủ từng bước: hãy luyện chủ đề này trên examproblems.com.