1.Dễ
Thuật toán sắp xếp nào liên tục hoán đổi các phần tử kề nhau đang sai thứ tự?
- ASắp xếp trộn
- BSắp xếp vun đống
- CQuicksort
- DSắp xếp nổi bọt
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
- B9 giây
- C6 giây
- D3 giây
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ì?
- AO(1)
- BO(n log n)
- CO(log n)
- DO(n)
4.Trung bình
Công thức truy hồi T(n) = T(n/2) + O(1) có nghiệm là gì?
- AO(n)
- BO(n log n)
- CO(1)
- DO(log n)
5.Trung bình
Độ phức tạp thời gian trong trường hợp xấu nhất của quicksort là gì?
- AO(n)
- BO(log n)
- CO(n²)
- DO(n log n)
6.Trung bình
Tìm kiếm theo chiều rộng trên một đồ thị không trọng số tìm ra:
- AĐường đi ngắn nhất tính theo số cạnh từ nút xuất phát
- BThứ tự tô-pô trong mọi đồ thị
- CCây khung nhỏ nhất
- DĐường đi ngắn nhất trong đồ thị có chứa các cạnh với trọng số âm
7.Khó
Cận nào là đúng cho log(n!)?
- AΘ(n)
- BΘ(n log n)
- CΘ(n²)
- DΘ(log n)
8.Khó
Phát biểu nào về việc chọn phần tử nhỏ thứ k của một mảng chưa sắp xếp là đúng?
- AViệc chọn chỉ có thể thực hiện trong O(n²)
- BQuickselect chạy trong O(log n) ở trường hợp xấu nhất, vì nó chỉ đệ quy một phía của phần tử chốt
- CQuickselect chạy trong thời gian kỳ vọng O(n), và trung vị của các trung vị đảm bảo O(n) trong trường hợp xấu nhất
- DViệc chọn luôn cần Ω(n log n) vì nó đòi hỏi sắp xếp
Đáp án
- 1. D · Sắp xếp nổi bọt
- 2. C · 6 giây
- 3. C · O(log n)
- 4. D · O(log n)
- 5. C · O(n²)
- 6. A · Đường đi ngắn nhất tính theo số cạnh từ nút xuất phát
- 7. B · Θ(n log n)
- 8. C · Quickselect chạy trong thời gian kỳ vọng O(n), và trung vị của các trung vị đảm bảo O(n) trong trường hợp xấu nhất
Lời giải đầy đủ từng bước: hãy luyện chủ đề này trên examproblems.com.