《数据结构(C语言描述)(第2版)》教学课件5-15克鲁斯卡尔算法

上传人:考试不挂****2941... 文档编号:243043763 上传时间:2024-09-14 格式:PPTX 页数:10 大小:4.23MB
返回 下载 相关 举报
《数据结构(C语言描述)(第2版)》教学课件5-15克鲁斯卡尔算法_第1页
第1页 / 共10页
《数据结构(C语言描述)(第2版)》教学课件5-15克鲁斯卡尔算法_第2页
第2页 / 共10页
《数据结构(C语言描述)(第2版)》教学课件5-15克鲁斯卡尔算法_第3页
第3页 / 共10页
点击查看更多>>
资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,2016-12-26,#,2016,数据结构,Data structure,讲授:,刘斌,克鲁斯卡尔算法,常州信息职业技术学院,02,教,学,目标,1,2,克鲁斯卡尔算法的具体实现,03,克鲁斯卡尔算法的分析,三、链表的插入,04,克鲁斯卡尔算法,1.5,克鲁斯卡尔算法,实现,具体算法,void,SortEdge(MGraph *G),/,对,Edge,中各元素按权值从小到大排序,int,i,j,temp;,char,ch;,for,(i=0;ie;i+),for,(j=i+1;je;j+),if,(Edgei.weightEdgej.weight),temp=Edgei.weight;,Edgei.weight=Edgej.weight;,Edgej.weight=temp;,ch=Edgei.ch1;,Edgei.ch1=Edgej.ch1;,Edgej.ch1=ch;,ch=Edgei.ch2;,Edgei.ch2=Edgej.ch2;,Edgej.ch2=ch;,05,克鲁斯卡尔算法,1.5,具体算法,int,LocateVex(MGraph *G,VertexType ch),/,确定顶点,ch,在图,G-vexs,中的位置,int,i,k;,for,(i=0;in;i+),if,(G-vexsi=ch),k=i;,return,k;,06,克鲁斯卡尔算法,1.5,具体算法,void,KruskalMST(MGraph *G),/,克鲁斯卡尔算法求最小生成树,int,p1,p2,i,j;,int,CCNumVertexNum;,/,标记连通分量号,for,(i=0;in;i+),CCNumi=i;,/,初始时共有,n,个连通分量,分量号分别为,0,1,2,.,n-1,SortEdge(G);,/,将边数组元素按权值从小到大排序,for,(i=0;ie;i+),p1=CCNumLocateVex(G,Edgei.ch1);,/p1,表示,ch1,所在连通分量号,p2=CCNumLocateVex(G,Edgei.ch2);,/p2,表示,ch2,所在连通分量号,if,(p1!=p2),/,顶点,ch1,与顶点,ch2,只要不在同一个连通分量,将该边加入,TE,printf(%c,%c)-%dn,Edgei.ch1,Edgei.ch2,Edgei.weight);,for,(j=0;jn;j+),/,将两个连通分量合并为一个连通分量,p1,if,(CCNumj=p2),CCNumj=p1;,07,克鲁斯卡尔算法,1.5,示例:,对图,G,的,Edge,数组进行按权值排序,下图的排序结果如下:,V0,V3,V1,V5,V4,V2,5,6,2,6,3,6,4,7,5,1,Edge0=(v0,v2,1),,,Edge1=(v3,v5,2),,,Edge2=(v1,v4,3),,,Edge3=(v2,v5,4),,,Edge4=(v0,v3,5),,,Edge5=(v1,v2,5),,,Edge6=(v0,v1,6),,,Edge7=(v2,v4,6),,,Edge8=(v4,v5,6),,,Edge9=(v2,v3,7),。,08,克鲁斯卡尔算法,1.5,V0,V3,V1,V5,V4,V2,5,6,2,6,3,6,4,7,5,1,然后选取不在同一个连通分量的顶点,并将新的边加入到,TE,中。,并将两个连通分量合并成同一个连通分量。,重复以上操作,直到只有一个连通分量时位置。此时,TE,便是连通网,G,最小生成树的边集。结束算法。,09,克鲁斯卡尔算法,1.5,算法分析,克鲁斯卡尔算法的时间复杂度为,O(elge),,即克鲁斯卡尔算法的时间复杂度取决于边数,e,,所以克鲁斯卡尔算法适合于对边数较少的稀疏图求最小生成树。,THANKS,2016.9.18,
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 课件教案


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

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


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