最短路径
文章平均质量分 76
someone_and_anyone
未知
展开
-
Dijkstra(迪杰斯特拉) —— 单源最短路
在图中,我们可以指定一个点为起点,计算它到其余各点的最短路径。我们寻找一个与它之间最近的点,以此为基础不断的更新它经过此点到其他点的最短路,并重复这个过程,直到所有的点都被寻找一遍。...原创 2018-07-09 08:37:30 · 157 阅读 · 0 评论 -
Bellman-Ford 解决负权边
在图中如果有负权边,Dijkstra就会出现错误,此时,可以使用Bellman-Ford。我们将可以不断用所有点更新当前的dis,总共需要更新 n - 1次。每次更新时要判断到B点与到A点再加上AB间距离的大小,以此来完成松弛操作基础版:#include<iostream>#include<cstdio>#include<cstring>using nam...原创 2018-07-14 15:10:03 · 228 阅读 · 0 评论 -
Floyd(弗洛伊德) —— 多源最短路
在Floyd算法中,我们需要通过每一个点对两个点进行连接,以此求出两点之间的最短路,因此,我们要遍历每一个点#include<iostream>#include<cstdio>#include<cstring>using namespace std;const int MAXN = 1005;const int INF = 0x3f3f3f3f;...原创 2018-07-09 08:35:37 · 371 阅读 · 0 评论