最小生成树(Prim)
来源:互联网 发布:seo黑帽技术教程 编辑:程序博客网 时间:2024/05/18 08:39
#include<iostream>using namespace std;#define INFINITE 9999;int e[100][100];int main(){ int i,j,k,w;//得到图(邻接矩阵) int n,m; int sum=0; int cnt=0; int mins=INFINITE; int min_index; int dis[100],book[100]={}; cin >> n >> m; for(i=1;i<=n;i++){ dis[i]=INFINITE; for(j=1;j<=n;j++) { if(i==j) e[i][j]=0; else e[i][j]=INFINITE; } } for(i=1;i<=m;i++){ cin >> j >> k >> w; e[j][k]=e[k][j]=w; } book[1]=1;cnt++;//把1号顶点放入dis数组中,更新数组(距离), for(i=2;i<=n;i++){ if(dis[i]>e[1][i]) dis[i]=e[1][i]; } while(cnt<n){//重复n次,每次放入前sum+dis【】距离 for(i=1;i<=n;i++){ if(book[i]==0){ if(dis[i]<mins ){ mins=dis[i]; min_index=i; } } } book[min_index]=1;sum+=dis[min_index];cnt++; mins=9999; for(i=1;i<=n;i++){ if(book[i]==0&&dis[i]>e[min_index][i]) dis[i]=e[min_index][i]; } cout << "dis " ; for(i=1;i<=n;i++) cout << dis[i] <<' ' ; cout << endl; } cout << sum; return 0;}
阅读全文
0 0
- 最小生成树(prim)
- 最小生成树(Prim)
- prim(最小生成树)
- 最小生成树(prim)
- 最小生成树(Prim)
- Prim最小生成树
- 最小生成树 prim
- 最小生成树 Prim
- 最小生成树-Prim
- Prim最小生成树
- 最小生成树 Prim
- prim最小生成树
- 最小生成树prim
- 最小生成树 prim
- prim 最小生成树
- Prim 最小生成树
- 最小生成树---Prim
- 最小生成树-prim
- jquery判断input checkbox 是否有checked属性
- 1012. The Best Rank (25)
- 第四章摘抄笔记The C Programming Lanuage
- 一个包含所有C++头文件的头函数
- Windows下Nginx+Tomcat负载均衡、Session复制
- 最小生成树(Prim)
- 2017百度之星初赛:A-1005. 今夕何夕
- js中常见的模糊问题
- Ubuntu Server16.04安装
- oracle常用命令
- 判断平台(安卓、ios)-- $cordovaDevice
- 史上最全的SpringMVC学习笔记
- Hadoop系列--Hadoop核心之MapReduce的原理
- XML约束_schema约束