为什么Dijktra算法解决不了带有负权边的问题?【带有经典例子讲解】

首先明确一点,Dijkstra算法 不是解决不了所有的带有负权边的问题,只是有的情况解决不了,直接上图吧。

比如下面这种情况,就出来不了正确的结果。
在这里插入图片描述

但是只要稍稍更换下权值,就是可以的
在这里插入图片描述

所以遇到负权边的情况,就老老实实用SPFA吧(但是其实就算不会写SPFA,用Dijkstra算法应该也能得到部分分,当然我说的不是ACM辣)

参考资料:https://www.zhihu.com/question/21620069

发布了197 篇原创文章 · 获赞 18 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/qq_41708792/article/details/103650992
今日推荐