最短路径
非负权用 Dijkstra(堆优化 O((V+E) log V)),负权用 Bellman-Ford 并检测负环,全源用 Floyd-Warshall,有启发式时用 A*。本章比较适用条件与复杂度。
- Dijkstra 在负权边上会给出错误答案
- A* 的启发函数必须可采纳(不高估)
- SPFA 最坏仍是 O(VE)
非负权用 Dijkstra(堆优化 O((V+E) log V)),负权用 Bellman-Ford 并检测负环,全源用 Floyd-Warshall,有启发式时用 A*。本章比较适用条件与复杂度。