![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
图论
Pysrain
Cast away illusions, Prepare for Revolution.
展开
-
使用优先队列优化后的Dijkstra算法
一个简单的模板,需要注意的是当权值不存在或者权值都相同时,dijkstra算法变成bfs,而且dijkstra算法处理不了负权边情况。一个重要的区别:(dijkstra与prim的区别)在dij算法中dis[i]数组表达的意义是:节点i到源点start最短距离,松弛操作dis[i]>dis[t]+map[t][i](t节点是最新确定的最短路径节点,i节点既是t的一个邻接节点)的意义是:t的邻...原创 2018-04-17 20:06:12 · 1410 阅读 · 0 评论 -
最短增广路算法(SAP)基本模板JAVA
SAP基本思路:准备好两个数组 vis[i]和pre[i], 1)vis[i]用来标记节点i是否被访问过,2)pre[i]用来记录节点i的前驱节点,(用来记录发现的增广路)准备好两个数组g[i][j]和map[i][j], 1)g[i][j]代表残余网络,残余网络中将由原点方向指向汇点方向的边称为“可增量边”,每条可增量边都有一条与之对应但方向相反的“实流边”,sap寻找可增广路主要依据...原创 2018-04-20 18:16:56 · 379 阅读 · 0 评论