摘要: 根据之前最短路径算法里提到的,我们只要放松所有边直到其全部失效就可以得到最短路径 注意:图中不能有负圈。否则当负圈中某个点经过这个负圈的所有边的松弛操作后,这个点的的d[i]就会减小,此时会发现它可以通过这个负圈的松弛操作不断使它自身不断变小。对于存在负圈的图,最短路无意义 由于是有关边的算法,并且 阅读全文
posted @ 2019-05-21 21:44 sparkyen 阅读(2403) 评论(2) 推荐(1) 编辑
摘要: 算法的核心思想:在尚未使用的顶点中,d[i]最小的顶点就是最短距离已经确定的顶点 解释:以图1-1为例,假设A,B,C已经被标记,则剩下的点可以认为经过A,B,C三点的松弛操作(看通过这个点作为中转站会不会使得其他点离起点更近)。 那么在被标记的顶点中,找出d[i]最小的顶点,就可以认为它就是最短距 阅读全文
posted @ 2019-05-21 20:39 sparkyen 阅读(210) 评论(0) 推荐(1) 编辑
摘要: 怀着复杂的心情来写这篇博客,有关图论的算法我看的有点头疼。 主要是实现起来没有那么困难,但是不像之前的那些算法,大致看一下就知道为什么,图论要看懂原理和正确性还是有点困难的,太耗时间而且烧脑了。 完全严格弄懂这个我估计够呛,下面给出基本思路,特别感谢《算法》这本书 边的松弛 边的松弛操作,定义如下: 阅读全文
posted @ 2019-05-21 20:11 sparkyen 阅读(207) 评论(0) 推荐(1) 编辑