最小生成树Prim
来源:互联网 发布:unity3d 高通arapi 编辑:程序博客网 时间:2024/06/11 20:35
#include<cstdio>#include<cstring>#include<algorithm>using namespace std;const int inf=0x3f3f3f3f;int map[105][105];int prim(int n) { int vis[105]={0},dis[105],ans=0; memset(dis,inf,sizeof(dis));//初始化为无穷大 dis[1]=0;//随意选定一个点开始 for(int i=1;i<=n;++i)//循环加入n个顶点 { int k=-1,tp=inf; for(int j=1;j<=n;++j) //查找距离已连接的部分最近的顶点 { if(!vis[j]&&dis[j]<tp) { k=j;tp=dis[j]; } } vis[k]=1;ans+=tp;//统计和标记 for(int j=1;j<=n;++j) //更新未选中的点和已经连接的部分之间的最短距离 { if(!vis[j]&&map[k][j]<dis[j]) { dis[j]=map[k][j]; } } } return ans;}int main(){ int n,m,a,b,c; while(scanf("%d",&n)&&n) { memset(map,inf,sizeof(map)); m=n*(n-1)/2;//边的数量 for(int i=0;i<m;i++) { scanf("%d%d%d",&a,&b,&c); map[a][b]=map[b][a]=c;//无向边 } printf("%d\n",prim(n)); } return 0;}
阅读全文
0 0
- Prim最小生成树
- 最小生成树 prim
- 最小生成树 Prim
- 最小生成树-Prim
- Prim最小生成树
- 最小生成树 Prim
- prim最小生成树
- 最小生成树prim
- 最小生成树 prim
- prim 最小生成树
- Prim 最小生成树
- 最小生成树---Prim
- 最小生成树-prim
- 最小生成树---Prim
- 最小生成树(Prim)
- 最小生成树 -PRIM
- 最小生成树--PRIM
- 最小生成树 prim()
- POJ 3207 Ikki's Story IV
- Unity使用第三方C语言库思路小结
- 在opencv与vs2017联合编程时,程序运行时报错OpenCV Error
- [kaggle系列 四] 通过mnist来研究神经网络的一些细节(1)
- G
- 最小生成树Prim
- Java类的高级用法总结
- python虚拟环境的安装和配置
- 笔试_HTML试题(2)
- keepalived的工作原理及配置说明
- JavaEE学习总结-request
- GANs-生成对抗网络 (生成明星脸)
- JAVAweb新手代码
- 数据结构-顺序表(2)实验要求以及顺序表的表示与实现