求如下程序:构造可以使n个城 连接的最小生成
话题:求如下程序:构造可以使n个城 连接的最小生成树
问题详情:求如下有关数据结构的程序:构造可以使n个城 连接的最小生成
回答:MST-PRIM(G, wm r) { 图G的所有顶点进入优先队列Q; ans
话题:求 最小生成树!急用!请各位大侠帮帮忙!谢谢用C语言编
回答:用prim算法或kruskal算法..结果是一样的..程序自己去网上搜索吧..
话题:编程求下图的最小生成树
问题详情:编程求下图的最小生成树
回答:#include #include using namespace std; int n,m,set[1000000],size[10000000]; struct ct { int A,B; int C; }CT[],GE[]; bool Edge[10000000]; int p(const void * a,const void *b) { ct * a1=(ct * )a; ct * b1=(ct * )b; return (a1-C)-(b1-C); } void init() { for(int i=0;inm; for(int i=0;iGE[i].AGE[i]. E[i].C; qsort(GE,m,sizeof(ct),p); } void kruskal() { int i,j; init(); int m1,m2; int d=0,k=1; while(k
话题:克鲁斯算法 求 最小生成树完整程序
回答:您好,看到您的问题很久没有人回答,但是问题过期无人回答会被扣分并且你的悬赏分也会被没收!所以我给你提几条建议:一,如果你的问题太难太专业,没人懂的话,你可以到相关专业 求助;二,你的问题需要长篇论述,需要花 的时间长但你的悬赏分太少,很少人愿意花时间,建议你增加悬赏分或 能够吸引 人来回答你的问题。三,您话题时间不妥,问题被后面话题的人顶出去了也是一个原因!你可以错开话题高峰期来问问中话题题。四,您可以注意选择正确的分类,以便得到相关专业人士的回答,如果分类正确没有人回答可以提高悬赏分。
话题:求一个最小生成树的C程序!!很急!!
问题详情:如何以最低的经济 价建设这个通信网,是一个网的最小生成树问题详情
回答:普利姆算法#includestdio.h #define N 100 #define INFINITY 0xFFFFFFF int map[N][N]; int n,e; struct { int adjvex; int lowcost; }closedge[N]; void LoadMap() { int i,j,v,u,c; for( i=1;i=n;i++) for( j=1;j=n;j++) map[i][j]=INFINITY; for( i=1;i=e;i++) { scanf("%d%d%d",u,v,c); map[u][v]=c; map[v][u]=c; } } void PrintMap() { int i,j; for( i=1;i=n;i++) for( j=1;j=n;j++) { if( map[i][j]==INFINITY ) printf("INF "); else printf("%3d ",map[i][j]); if( j==n ) printf("\n"); } } void MST_PRIM(int u) { 顶点从1编号到n int i,j,k,min,MinSpan=0; for( j=1; j=
话题:求 最小生成树的标准程序(PASCAL语言)
回答:你是要prim还是kruskal? 两种算法适用范围不同 prim的时间复杂度是点的个数的平方 kruskal的时间复杂度是边的平方 kruskal如果用并查集优化,可以达到O(nlogn)的水平我把两种算法的核心 码都贴出来吧:procedure prim;var closest:array[1..maxv] of integer; lowcost:array[1..maxv] of integer; i,j,m,t:integer; procedure init; var i:integer; begin for i:=1 to n do closest[i]:=k; for i:=1 to n do if (cost[i,k]=0)and(ik) then lowcost[i]:=maxint else lowcost[i]:=cost[i,k]; end;begin {main} init; for i:=1 to n-1 do begin t:=maxint; for j:=1 to n do if (lowcost[j]0)and (lowcost[j]t) then begin t:=lowcost[j]; m:=j; end; lowcost[m]:=0; print; for j:=1 to n
- 评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)
-

















































