1.Dễ
Hàm nào sau đây tăng chậm nhất khi n lớn dần?
- AO(n log n)
- BO(n)
- CO(n²)
- DO(log n)
2.Dễ
Tìm kiếm nhị phân đòi hỏi gì ở đầu vào của nó?
- AMảng phải được sắp xếp
- BMảng không được có quá 1000 phần tử
- CMảng chỉ được chứa số dương
- DĐộ dài mảng phải là lũy thừa của hai
3.Dễ
Thời gian chạy của sắp xếp đếm cho n số nguyên trong khoảng từ 0 đến k là bao nhiêu?
- AO(n + k)
- BO(n log n)
- CO(n²)
- DO(k log n)
4.Trung bình
Công thức truy hồi T(n) = 2T(n − 1) + O(1) có nghiệm là gì?
- AO(2ⁿ)
- BO(n log n)
- CO(n²)
- DO(n)
5.Trung bình
Vì sao cơ số của logarit thường bị bỏ trong Big O, như trong O(log n)?
- ACơ số chỉ quan trọng với n nhỏ
- BCác logarit với cơ số khác nhau chỉ khác nhau một hệ số hằng
- CLogarit luôn được làm tròn thành số nguyên
- DMọi logarit trong khoa học máy tính đều có cơ số 10, nên cơ số được ngầm hiểu
6.Trung bình
Một hàm chạy một vòng lặp n lần lặp rồi, tách biệt, một vòng lặp khác n lần lặp. Độ phức tạp thời gian của nó là gì?
- AO(log n)
- BO(n²)
- CO(2ⁿ)
- DO(n)
7.Khó
22n có thuộc O(2ⁿ) không?
- AKhông, vì 22n tăng chậm hơn 2ⁿ
- BCó, vì các hệ số hằng trong số mũ luôn bị bỏ qua trong Big O
- CKhông, vì 22n = 4ⁿ và 4ⁿ / 2ⁿ = 2ⁿ tăng không giới hạn
- DCó, vì cả hai đều là hàm mũ
8.Khó
Thời gian chạy của thuật toán Dijkstra với đống nhị phân trên đồ thị có V đỉnh và E cạnh là bao nhiêu?
- AO(V³)
- BO((V + E) log V)
- CO(V + E)
- DO(V × E)
Đáp án
- 1. D · O(log n)
- 2. A · Mảng phải được sắp xếp
- 3. A · O(n + k)
- 4. A · O(2ⁿ)
- 5. B · Các logarit với cơ số khác nhau chỉ khác nhau một hệ số hằng
- 6. D · O(n)
- 7. C · Không, vì 22n = 4ⁿ và 4ⁿ / 2ⁿ = 2ⁿ tăng không giới hạn
- 8. B · O((V + E) log V)
Lời giải đầy đủ từng bước: hãy luyện chủ đề này trên examproblems.com.