Với đồ thị n đỉnh, độ phức tạp tính toán của thuật toán Dijkstra là:
Trả lời:
Đáp án đúng: D
Thuật toán Dijkstra được sử dụng để tìm đường đi ngắn nhất từ một đỉnh nguồn đến tất cả các đỉnh còn lại trong một đồ thị có trọng số không âm. Độ phức tạp của thuật toán Dijkstra phụ thuộc vào cách cài đặt:
- Nếu sử dụng mảng để tìm đỉnh có khoảng cách ngắn nhất, độ phức tạp là O(n2), trong đó n là số đỉnh.
- Nếu sử dụng hàng đợi ưu tiên (ví dụ: heap nhị phân) để tìm đỉnh có khoảng cách ngắn nhất, độ phức tạp là O((m+n) log n), trong đó m là số cạnh và n là số đỉnh. Với đồ thị dày đặc, m có thể là O(n2), khi đó độ phức tạp gần với O(n2 log n). Với đồ thị thưa, m gần với O(n), thì độ phức tạp gần với O(n log n).
Trong các đáp án đã cho, O(n2 log2n) thể hiện độ phức tạp khi sử dụng hàng đợi ưu tiên (heap) và thường được chấp nhận là độ phức tạp phổ biến của thuật toán Dijkstra.
Bộ 525 câu hỏi trắc nghiệm ôn thi môn Toán rời rạc có đáp án dưới đây sẽ là tài liệu ôn tập hữi ích dành cho các bạn sinh viên. Mời các bạn cùng tham khảo!
30 câu hỏi 60 phút






