![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
图论算法
喜欢被丢来丢去
一个很水很菜的业余程序设计爱好者
展开
-
连猴子都看得懂的Floyd原理
Floyd的本质其实是一个动态规划思想。虽然它被直接用来做多源最短路,但是它其实经过拓展,可以解决很多奇奇怪怪的问题本质Floyd的本质是dp,它原本是个三维状态的dp,只不过为了缩小空间复杂度,在保证其正确性的情况下使用了二维,大部分参考书上也都只有二维,所以导致很多人无法透彻地理解这个算法,只能死背转移方程,甚至代码有时也会想当然地写错我们来看看它的状态的定义:f[ k ][ i ][ j ] 表示中间节点只经过1到k,i到j之间的最短路径(g[ i ][ j ]表示边< i , j &原创 2020-08-26 14:09:47 · 405 阅读 · 2 评论 -
图论最短路
图论最短路算法是一种家喻户晓的算法,并且一直受到各种出题人的青睐,在此简单介绍下几种常见算法先看看个奇怪的概念(十分钟重要):松弛 以上图为例,黑点到红点有条路,你可以把它看成黑点和红点的连线,也可以看成黑红间一些点的连线,总之,已知求出的最短路长度即为7这时候,我们引入一点(绿点),发现比起原来求出的,通过从黑点用绿点中转到达红点,结果更优,这个操作,就叫做松弛多源最短路:Floyd多源最短路,即需要求图中任意两个点的最短路径,这种最短路目前貌似只有Floyd比较好用这个算法的实现和思想都比原创 2020-08-25 14:11:39 · 1436 阅读 · 1 评论