最小生成树(minimum spanning tree)

最小生成树(minimum spanning tree)

ID:12986520

大小:31.00 KB

页数:13页

时间:2018-07-20

最小生成树(minimum spanning tree)_第1页
最小生成树(minimum spanning tree)_第2页
最小生成树(minimum spanning tree)_第3页
最小生成树(minimum spanning tree)_第4页
最小生成树(minimum spanning tree)_第5页
资源描述:

《最小生成树(minimum spanning tree)》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、最小生成树(minimumspanningtree)#includesstdio.h><#includesstring.h><#definemax9999999intmain(){intmap[101][101],i,j,x,y,z,n,m,k;intmin,len,f[101],mark[101],flags;while(scanf("%d%d&m&n),(m){memset(mark,0,sizeof(mark);for(i=1,the<=n;i++)for(j=1;j<=n;j++)map[][j]=max.for(i=1,the<=m;i++){scanf("%d

2、%d%d&x&y&z);if(z-map[x][y])(map[x][y]=map[y][x]=y;}}for(i=2;the<=n;i++)f[i]=map[1][];f(1)=0;len=0;for(i=1,the<=n;i++){min=max.for(j=1;j<=n;j++){if(!mark[j]&&f[j]map[k][j])f[j]=[k][j]map.}}flag=0;

3、for(i=1,the<=n;i++)if(f[i]=max(flag=1);break;}if(flag)printf("?");elseprintf("%d",len);}}#includesstdio.h><#includesstring.h><#definesize105#defineinit99.9999intcount;intgraph[size][size];longsum;voidprim(intvillige){inti,j;intmin,locate.intdist[size];sum=0;boolvisited[size];memset(vi

4、sited,0,sizeof(visited));memset(dist,init,sizeof(dist).for(i=1,the<=villige;i++)dist[i]=graph[1][];visited[i]=true;count=1;for(j=2,j<=villige;j++){min=init.for(i=2;the<=villige;i++){if(!visited[]&[i]

5、<=villige;i++){if(!visited[]&[local][graph].=0&&dist[]>[local][graph])dist[i]=graph[locate][i].}}elsereturn;}}intmain(){introad,villige;inti,j;weight;while(scanf("%d%d"&road&villige).=-eof&road){count=0;for(i=0;i<=villige;i++){for(j=0,j<=villige;j++)if(i==2)graph[the][j]=0.elsegraph[the][

6、j]=init.}while(road){scanf("%d%d%d,&,&j.,&weight);graph[the][j]=weight;graph[j][i]=weight;}prim(villige);if(count==villige)printf(%ld",sum);elseprintf("?");}return0;}#includesstdio.h><#includesstdlib.h><#includesiostream>

7、intgetfather(intv){if([v].=V)发[五]=getfather(FA[V]);复发[V];}整型CMP(常量空*,常量*){结构(=);结构(=);如果(c)!=D-L)返回->->LLC;如果(C->X-D->x)返回C->X-D->X;否则返回C->y-d->Y;}国际judge_and_union(x,y)/判断两点是否已经到达!{intFX,FY,丫头,马克斯;FX(x)=getfather;FY=getfather(Y);如果(外汇)返回0;疯丫头=外汇<风云?外汇:财政年度;马克斯=外汇<风

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。