首页 > 代码库 > 最短路径(五)—最短路径算法对比分析

最短路径(五)—最短路径算法对比分析

技术分享


Floyd算法:

时间复杂度高,可以解决负权边,并且均摊在每一点对上,在所有算法中还是属于较优的。较小的编码复杂度也是优势,如果要求是所有点之间的最短路径,或者如果数据范围较小,Floyd算法比较适合。


Dijkstra算法:

无法解决负权边的图,但有良好的可扩展性,时间复杂度低,堆优化后的Dijkstra的时间复杂度可以达到O(MlogN)。


Bellman-Ford算法:

可以解决负权边的图,可以判断是否有负权回路。

最短路径(五)—最短路径算法对比分析