Bellman-Ford-解决负权边—C
来源:互联网 发布:java金额大写转换 编辑:程序博客网 时间:2024/06/06 07:26
Bellman-Ford算法非常简单,核心代码只有4行,并且可以完美地解决带有负权边的图,可以检测负权回路。时间复杂度为O(NM)
int main(){ int dis[50],u[50],v[50],w[50]; int inf=99999999; int n,m,i,k,check; scanf("%d%d",&n,&m); for(i=1;i<=m;i++) scanf("%d%d%d",&u[i],&v[i],&w[i]); //初始化数组dis,顶点1到其余顶点的距离 for(i=1;i<=n;i++) dis[i]=inf; dis[1]=0; //算法核心,对所有边进行n-1轮松弛 for(k=1;k<=n-1;k++) { check=0;//用来标记在本轮松弛中数组dis是否会发生更新 for(i=1;i<=m;i++) { if(dis[u[i]]+w[i]<dis[v[i]]) { dis[v[i]]=dis[u[i]]+w[i]; check=1; //数组更新,改变check的值 } } if(check==0) break; //如果数组dis没有更新,提前退出循环结束算法 } //输出结果 for(i=1;i<=n;i++) printf("%d ",dis[i]); return 0;}
阅读全文
0 0
- Bellman-Ford-解决负权边—C
- Bellman-Ford------解决负权边
- Bellman-Ford---解决负权边
- Bellman-Ford -解决负权边
- Bellman-Ford-解决负权边
- Bellman-Ford——解决负权边
- Bellman-Ford算法——解决负权边
- Bellman-Ford算法——解决负权边
- 6.3Bellman-Ford——解决负权边
- 解决负权边的算法(Bellman Ford )(有向图) (1)C ~
- Bellman——ford
- poj3259 bellman—ford
- Bellman-Ford(贝尔曼,福特)算法——解决负权边
- Bellman-Ford——解决负权边(求某点到所有点的最短距离)
- 最短路径(三)—Bellman-Ford算法(解决负权边)
- Bellman-Ford算法--解决负权边的单源最短路径算法
- 最短路径之Bellman-Ford算法----解决负权边
- POJ1860—Bellman-Ford算法
- 神经网络
- 约瑟夫环问题
- Unity Shader学习笔记:纹理动画
- 第十次多校联合hdu6178Monkeys(输入输出挂)
- C++中尽量使用C++提供的类型转换(2)---《More Effective C++》
- Bellman-Ford-解决负权边—C
- C-volatile,const
- ggplot2之Layer—— geoms(一)
- 14.路由表中存的是什么
- log4j2的使用详解(1)
- matlab仿真迈克尔逊干涉仪工作 单频非定域等倾干涉
- NLP深度学习 —— CS224学习笔记8
- PageHelper的使用
- windows ssh 连接 ubuntu