bellman-ford 可以有负权,但不能有负权回路,
spfa是bellman-ford的队列优化,时间复杂度O(ke),其中k为所有顶点进队的平均次数,可以证明k一般小于等于2。
dijkstra不可以有负权,但效率比bellman-ford快,O(2^n),用二叉堆优化O((m+n)log n),斐波纳契堆能稍微提高一些性能,让算法运行时间达到O(m + n log n)。
floyed算每对顶点之间的最短路,前3种方法是计算单源的点。
spfa是bellman-ford的队列优化,时间复杂度O(ke),其中k为所有顶点进队的平均次数,可以证明k一般小于等于2。
dijkstra不可以有负权,但效率比bellman-ford快,O(2^n),用二叉堆优化O((m+n)log n),斐波纳契堆能稍微提高一些性能,让算法运行时间达到O(m + n log n)。
floyed算每对顶点之间的最短路,前3种方法是计算单源的点。