kruscal 和 prim模板
来源:互联网 发布:手机蜂窝数据打不开 编辑:程序博客网 时间:2024/05/18 02:22
http://blog.csdn.net/wangjian8006/article/details/7875157
using namespace std;#define MAXM 900#define MAXV 30#define INF 1<<29int map[MAXV][MAXV],n,d[MAXV],vis[MAXV];void prim(){int i,j,mi,v;for(i=0;i<n;i++){d[i]=map[0][i];vis[i]=0;}for(i=1;i<=n;i++){mi=INF;for(j=0;j<n;j++){if(!vis[j]&&mi>d[j]){v=j;mi=d[j];}vis[v]=1;for(j=0;j<n;j++){if(!vis[j]&&d[j]>map[v][j]){d[j]=map[v][j];}}}}for(i=1;i<n;i++)d[0]+=d[i];cout<<d[0]<<endl;}typedef struct{int s,t,w;}Edge;int esum,set[MAXV];//顶点的总数为MAXV 边的总数为esumEdge edge[MAXM];//边集合int find(int x){if(x!=set[x]){return set[x]=find(set[x]);}elsereturn x;}bool Union(int a,int b){int fa,fb;fa=find(a);fb=find(b);if(fa==fb)return 0;set[fa]=fb;return 1;}//注意在调用Kruskal之前首先对边进行排序void kruskal(){int i,ans=0;for(i=0;i<esum;i++)//边的总数 esum{if(Union(edge[i].s,edge[i].t)){ans+=edge[i].w;}}cout<<ans<<endl;}int main(){return 0;}
- kruscal 和 prim模板
- prim和kruscal区别
- 最小生成树(Prim和Kruscal)
- 最小生成树(prim和kruscal算法)
- 最小生成树的prim算法和kruscal算法
- HDOJ1162(Prim 或 Kruscal)
- 最小生成树 prim kruscal
- Highways POJ 1751 【Prim || Kruscal】
- Kruscal算法模板
- COJ 1036小镇网(最小生成树prim和kruscal)
- 最小生成树算法---Kruscal算法和Prim算法(入门)
- NYOJ38 布线问题 prim算法 kruscal算法
- POJ 1251 Jungle Roads ( Prim , Kruscal )
- Truck History POJ 1789【Kruscal算法 || Prim】
- 最小生成树之PRIM及KRUSCAL
- 修路问题-最小生成树 Prim&Kruscal
- 最小生成树(先写个prim,kruscal)
- 图的邻接矩阵表示形式,DFS和BFS,最小生成树Prim和Kruscal,单源最短路径Dijkstra算法
- 内核启动第一个程序
- 银行系统1.1
- [Android]破解android安卓apk软件所需的工具
- ubuntu下安装SSH服务
- Cpulimit
- kruscal 和 prim模板
- usb host驱动程序崩溃的问题
- JBPM学习(1):搭建JBPM4.4开发环境
- 【2013微软校招面试题】将链表的奇偶位交换,不能使用交换链表中的值这种做法。
- 一些CSDN的网址备份
- 定义事件过程类型
- PYTHON编码转换小记
- vs2005 生成的应用程序 在win7下以管理员权限运行
- Ant commend