Kruskal算法说明及图解

上传人:简****9 文档编号:25834791 上传时间:2021-08-01 格式:DOCX 页数:5 大小:70.48KB
收藏 版权申诉 举报 下载
Kruskal算法说明及图解_第1页
第1页 / 共5页
Kruskal算法说明及图解_第2页
第2页 / 共5页
Kruskal算法说明及图解_第3页
第3页 / 共5页
资源描述:

《Kruskal算法说明及图解》由会员分享,可在线阅读,更多相关《Kruskal算法说明及图解(5页珍藏版)》请在装配图网上搜索。

1、1.无向网图及边集数组存储示意图vertex6=V0V1V2V3V4V5下标012345678from120234030to435555142weight1217192525263438462.Kruskal方法构造最小生成树的过程(a)一个图(b)最小生成树过程1最小生成树过程2(d)最小生成树过程3(e)最小生成树过程4(c)最小生成树过程53.伪代码1)初始化辅助数组parentvertexNum;num=0;2)依次考查每一条边 for(i=0; iarcNum; i+ ) vex1=edgei.form 所在生成树的根结点 vex2=edgei.to所在生成树的根结点 If(vex1

2、!=vex2)parentvex2=vex1;num+;if(num=vertexNum-1) 算法结束4.构造过程中参数变化、顶点集 数组、parentV0V1V2V3V4V5被考查边输出说明初始化parent-1-1-1-1-1-16棵生成树,均只后根结点parent-1-1-1-11-1(v1,v4)12(v1,v4)12vex1=1,vex2=4;parent4=1;parent-1-1-121-1(v2,v3)17(v2,v3)17vex1=2,vex2=3;parent3=2;parent-1-1-1210(v0,v5)19(v0,v5)19vex1=0,vex2=5;parent

3、5=0;parent2-1-1210(v2,v5)25(v2,v5)25vex1=2,vex2=0;parent0=2;parent2-1-1210(v3,v5)25vex1=2,vex2=2;所在根结点相同parent2-11210(v4,v6)26(v4,v6)26vex1=1,vex2=2;parent2=1;parent2-11210生成树根结点是v15.主要代码/*构造函数 */templateEdgeGraph:EdgeGraph(DataType a, int n, int e) vertexNum=n; edgeNum=e;int i,j,weight;for (int k=0

4、; kvertexNum; k+)vertexk=ak;for (k=0; kedgeNum; k+)coutij;edgek.from=i;edgek.to=j;coutweight;edgek.weight=weight;*Kruskal算法构造最小生成树 */template void EdgeGraph:Kruskal() int num;int parentMaxVertex, vex1, vex2;for (int i=0; ivertexNum; i+) parenti=-1;for (i=0,num=0; iedgeNum; i+)vex1=FindRoot(parent, e

5、dgei.from);vex2=FindRoot(parent, edgei.to);if (vex1!=vex2)cout ( edgei.from edgei.to ) weight:edgei.weight endl;parentvex2=vex1;num+;if (num=vertexNum-1) return;/*寻找根节点 */template int EdgeGraph:FindRoot(int parent, int v) int t=v;while(parentt -1)t=parentt;return t;/*遍历输出 */template void EdgeGraph:Print()for (int i=0; iedgeNum; i+)cout(edgei.fromedgei.to)weight:edgei.weightendl;6.结果截图发现不按大小输入 weight 的值则不能正确生成最小生成树如排好序输入时则得到正确的最小生成树结果正确,所以需要按大小顺序输入权值大小的 Kruskal 算法实际上对较复杂无向网图来说不适用。故思考在程序中添加一个对权值排序的函数(修改对应的 from,to)

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!