适用条件&范围
- 1.单源最短路径(从源点s到其它所有顶点v);
2.有向图&无向图;
3.边权可正可负(如有负权回路输出错误提示);
4.差分约束系统; -
算法描述
- 1.初始化:将除源点外的所有顶点的最短距离估计值 d[v] =+∞, d[s] =0;
- 2.松弛操作:反复对边集E中的每条边进行松弛操作,循环N-1次(N是点数);
- 3..检验负权回路:判断边集E中的每一条边的两个端点是否收敛。如果存在未收敛的顶点( d[v]>d[u]+map[u][v] ),则算法返回false,表明问题无解;否则算法返回true,并且从源点可达的顶点v的最短距离保存在 d[v]中;