Thuật toán Dijkstra được áp dụng cho:
Trả lời:
Đáp án đúng: B
Thuật toán Dijkstra là một thuật toán 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ương án A: "Đồ thị vô hướng hoặc có hướng có trọng số không âm." Đây là đáp án chính xác vì thuật toán Dijkstra có thể áp dụng cho cả đồ thị vô hướng và đồ thị có hướng, miễn là trọng số của các cạnh không âm.
- Phương án B: "Đồ thị liên thông có trọng số không âm" Mặc dù thuật toán Dijkstra thường được áp dụng cho đồ thị liên thông, nhưng tính liên thông không phải là một yêu cầu bắt buộc. Thuật toán vẫn hoạt động đúng nếu đồ thị không liên thông, nó chỉ tìm đường đi ngắn nhất đến các đỉnh có thể đạt được từ đỉnh nguồn.
- Phương án C: "Đồ thị có hướng có trọng số không âm." Thuật toán Dijkstra có thể dùng cho đồ thị vô hướng và có hướng, nên đáp án này chưa bao quát hết.
- Phương án D: "Đồ thị vô hướng hoặc có hướng không có chu trình âm" Điều kiện "không có chu trình âm" liên quan đến thuật toán Bellman-Ford chứ không phải Dijkstra. Dijkstra yêu cầu trọng số không âm, chứ không cấm chu trình âm.
Do đó, đáp án chính xác nhất là A.