图的连通性最小生成树的算法思想幻灯片.ppt
《图的连通性最小生成树的算法思想幻灯片.ppt》由会员分享,可在线阅读,更多相关《图的连通性最小生成树的算法思想幻灯片.ppt(35页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、图的连通性最小生成树的算法思想第1页,共35页,编辑于2022年,星期五1.1.算法思想算法思想 假设假设N=(V,E)是连通网是连通网,TE是是N上最小生成树中边的上最小生成树中边的集合集合,算法从算法从U=vk,TE=开始开始(即从即从vk出发求最小生成出发求最小生成树树,vkV)。重复执行下述操作:。重复执行下述操作:在所有的边在所有的边(vi,vj)E(viU,vjV-U)中寻找一条权中寻找一条权值最小的边值最小的边(vi,vj)将其添加到将其添加到TE中中(或打印之或打印之),同时把同时把vj添添 加到集合加到集合U 中中。反复执行上述操作反复执行上述操作n-1次(或所有顶点全部加入
2、次(或所有顶点全部加入U时为止)。时为止)。一、最小生成树一、最小生成树第2页,共35页,编辑于2022年,星期五2.实例:V=v1,v2,v3,v4,v5,v6 一、最小生成树一、最小生成树v1v2v3v4v5v66551256463任取uk=v1,则:U=v1,V-U=v2,v3,v4,v5,v6 第3页,共35页,编辑于2022年,星期五2.实例:V=v1,v2,v3,v4,v5,v6 一、最小生成树一、最小生成树v1v2v3v4v5v66551256463任取uk=v1,则:U=v1,V-U=v2,v3,v4,v5,v6 取边(v1,v3),则:U=v1,v3V-U=v2,v4,v5,
3、v6 第4页,共35页,编辑于2022年,星期五2.实例:V=v1,v2,v3,v4,v5,v6 一、最小生成树一、最小生成树v1v2v3v4v5v66551256463任取uk=v1,则:U=v1,V-U=v2,v3,v4,v5,v6 取边(v1,v3),则:U=v1,v3V-U=v2,v4,v5,v6 取边(v3,v6),则:U=v1,v3,v6V-U=v2,v4,v5 第5页,共35页,编辑于2022年,星期五2.实例:V=v1,v2,v3,v4,v5,v6 一、最小生成树一、最小生成树v1v2v3v4v5v66551256463任取uk=v1,则:U=v1,V-U=v2,v3,v4,v
4、5,v6 取边(v1,v3),则:U=v1,v3V-U=v2,v4,v5,v6 取边(v3,v6),则:U=v1,v3,v6V-U=v2,v4,v5 取边(v6,v4),则:U=v1,v3,v6,v4V-U=v2,v5 第6页,共35页,编辑于2022年,星期五2.实例:V=v1,v2,v3,v4,v5,v6 一、最小生成树一、最小生成树v1v2v3v4v5v66551256463任取uk=v1,则:U=v1,V-U=v2,v3,v4,v5,v6 取边(v1,v3),则:U=v1,v3V-U=v2,v4,v5,v6 取边(v3,v6),则:U=v1,v3,v6V-U=v2,v4,v5 取边(v
5、6,v4),则:U=v1,v3,v6,v4V-U=v2,v5 取边(v3,v2),则:U=v1,v3,v6,v4,v2V-U=v5 第7页,共35页,编辑于2022年,星期五2.实例:V=v1,v2,v3,v4,v5,v6 一、最小生成树一、最小生成树v1v2v3v4v5v66551256463任取uk=v1,则:U=v1,V-U=v2,v3,v4,v5,v6 取边(v1,v3),则:U=v1,v3V-U=v2,v4,v5,v6 取边(v3,v6),则:U=v1,v3,v6V-U=v2,v4,v5 取边(v6,v4),则:U=v1,v3,v6,v4V-U=v2,v5 取边(v3,v2),则:U
6、=v1,v3,v6,v4,v2V-U=v5 取边(v2,v5),则:U=v1,v3,v6,v4,v2,v5V-U=第8页,共35页,编辑于2022年,星期五2.实例:V=v1,v2,v3,v4,v5,v6 一、最小生成树一、最小生成树v1v2v3v4v5v66551256463任取uk=v1,则:U=v1,V-U=v2,v3,v4,v5,v6 取边(v1,v3),则:U=v1,v3V-U=v2,v4,v5,v6 取边(v3,v6),则:U=v1,v3,v6V-U=v2,v4,v5 取边(v6,v4),则:U=v1,v3,v6,v4V-U=v2,v5 取边(v3,v2),则:U=v1,v3,v6
7、,v4,v2V-U=v5 取边(v2,v5),则:U=v1,v3,v6,v4,v2,v5V-U=第9页,共35页,编辑于2022年,星期五3.算法的实现:一、最小生成树一、最小生成树v1v2v3v4v5v66551256463 用一个辅助的一维数组closedge0.n-1存储n个顶点到U的距离:即对于每一个viV-U,1in,1)用closedgei-1.lowcost存储vi到U的最短距离(若vi已属于U中的元素,则vi到U的距离为0);2)用closedgei-1.adjvex存储vi到U的最短距离所邻接的那个顶点的值。用顺序存储结构(Mgraph G)存储图,即利用一个二维数组(G.a
8、rcs)存储图的邻接矩阵,用一个一维数组(G.vexs)存储各顶点的值。第10页,共35页,编辑于2022年,星期五一、最小生成树一、最小生成树v1v2v3v4v5v66551256463 数据结构的动态分析 6 1 5 6 5 3 1 5 5 6 4 5 6 5 2 3 6 6 4 2 6 G.arcs如下:012345 0 1 2 3 4 5 算法执行期间一维数组closedge的动态变化过程:3.算法的实现:iclosedge012345UV-UKadjvexlowcostv10v16v11v15v1v1v1v2,v3,v4,v5,v601234501G.vexs:v1v2v3v4v5v
9、6 0 1 2 3 4 5 第11页,共35页,编辑于2022年,星期五一、最小生成树一、最小生成树v1v2v3v4v5v66551256463 数据结构的动态分析 6 1 5 6 5 3 1 5 5 6 4 5 6 5 2 3 6 6 4 2 6 G.arcs如下:012345 0 1 2 3 4 5 算法执行期间一维数组closedge的动态变化过程:3.算法的实现:iclosedge012345UV-UKadjvexlowcostv10v16v11v15v1v1v1v2,v3,v4,v5,v601234501G.vexs:v1v2v3v4v5v6 0 1 2 3 4 5 第12页,共35
10、页,编辑于2022年,星期五一、最小生成树一、最小生成树v1v2v3v4v5v66551256463 数据结构的动态分析 6 1 5 6 5 3 1 5 5 6 4 5 6 5 2 3 6 6 4 2 6 G.arcs如下:012345 0 1 2 3 4 5 算法执行期间一维数组closedge的动态变化过程:3.算法的实现:iclosedge012345UV-UKadjvexlowcostv10v16v11v15v1v1v1v2,v3,v4,v5,v6201234501G.vexs:v1v2v3v4v5v6 0 1 2 3 4 5 打印(v1,v3),也即打印:(closedgek.adj
11、vex,G.vexsk)第13页,共35页,编辑于2022年,星期五一、最小生成树一、最小生成树v1v2v3v4v5v66551256463 数据结构的动态分析 6 1 5 6 5 3 1 5 5 6 4 5 6 5 2 3 6 6 4 2 6 G.arcs如下:012345 0 1 2 3 4 5 算法执行期间一维数组closedge的动态变化过程:3.算法的实现:iclosedge012345UV-UKadjvexlowcostv10v16v10v15v1v1v1v2,v3,v4,v5,v6201234501G.vexs:v1v2v3v4v5v6 0 1 2 3 4 5 用二维数组的第K行
12、与这里的lowcost行中的元素依次比较,若发现距离变小了,则用小值替代大值,且用G.vexsK 的值的值(即v3)取代相应的adjvex的值。第14页,共35页,编辑于2022年,星期五一、最小生成树一、最小生成树v1v2v3v4v5v66551256463 数据结构的动态分析 6 1 5 6 5 3 1 5 5 6 4 5 6 5 2 3 6 6 4 2 6 G.arcs如下:012345 0 1 2 3 4 5 算法执行期间一维数组closedge的动态变化过程:3.算法的实现:iclosedge012345UV-UKadjvexlowcostv10v35v10v15v36v34v1v2
13、,v4,v5,v6201234501G.vexs:v1v2v3v4v5v6 0 1 2 3 4 5 第15页,共35页,编辑于2022年,星期五一、最小生成树一、最小生成树v1v2v3v4v5v66551256463 数据结构的动态分析 6 1 5 6 5 3 1 5 5 6 4 5 6 5 2 3 6 6 4 2 6 G.arcs如下:012345 0 1 2 3 4 5 算法执行期间一维数组closedge的动态变化过程:3.算法的实现:iclosedge012345UV-UKadjvexlowcostv10v35v10v15v36v34v1,v3v2,v4,v5,v601234501G.
14、vexs:v1v2v3v4v5v6 0 1 2 3 4 5 第16页,共35页,编辑于2022年,星期五一、最小生成树一、最小生成树v1v2v3v4v5v66551256463 数据结构的动态分析 6 1 5 6 5 3 1 5 5 6 4 5 6 5 2 3 6 6 4 2 6 G.arcs如下:012345 0 1 2 3 4 5 算法执行期间一维数组closedge的动态变化过程:3.算法的实现:iclosedge012345UV-UKadjvexlowcostv10v35v10v15v36v34v1,v3v2,v4,v5,v6501234501G.vexs:v1v2v3v4v5v6 0
15、 1 2 3 4 5 打印(v3,v6),也即打印:(closedge5.adjvex,G.vexs5)第17页,共35页,编辑于2022年,星期五一、最小生成树一、最小生成树v1v2v3v4v5v66551256463 数据结构的动态分析 6 1 5 6 5 3 1 5 5 6 4 5 6 5 2 3 6 6 4 2 6 G.arcs如下:012345 0 1 2 3 4 5 算法执行期间一维数组closedge的动态变化过程:3.算法的实现:iclosedge012345UV-UKadjvexlowcostv10v35v10v15v36v30v1,v3v2,v4,v5,v650123450
16、1G.vexs:v1v2v3v4v5v6 0 1 2 3 4 5 用二维数组的第K行与这里的lowcost行中的元素依次比较,若发现距离变小了,则用小值替代大值,且用G.vexsK 的值的值(即v6)取代相应的adjvex的值。第18页,共35页,编辑于2022年,星期五一、最小生成树一、最小生成树v1v2v3v4v5v66551256463 数据结构的动态分析 6 1 5 6 5 3 1 5 5 6 4 5 6 5 2 3 6 6 4 2 6 G.arcs如下:012345 0 1 2 3 4 5 算法执行期间一维数组closedge的动态变化过程:3.算法的实现:iclosedge0123
17、45UV-UKadjvexlowcostv10v35v10v62v36v30v1,v3,v6v2,v4,v5501234501G.vexs:v1v2v3v4v5v6 0 1 2 3 4 5 第19页,共35页,编辑于2022年,星期五一、最小生成树一、最小生成树v1v2v3v4v5v66551256463 数据结构的动态分析 6 1 5 6 5 3 1 5 5 6 4 5 6 5 2 3 6 6 4 2 6 G.arcs如下:012345 0 1 2 3 4 5 算法执行期间一维数组closedge的动态变化过程:3.算法的实现:iclosedge012345UV-UKadjvexlowcos
18、tv10v35v10v62v36v30v1,v3,v6v2,v4,v501234501G.vexs:v1v2v3v4v5v6 0 1 2 3 4 5 第20页,共35页,编辑于2022年,星期五一、最小生成树一、最小生成树v1v2v3v4v5v66551256463 数据结构的动态分析 6 1 5 6 5 3 1 5 5 6 4 5 6 5 2 3 6 6 4 2 6 G.arcs如下:012345 0 1 2 3 4 5 算法执行期间一维数组closedge的动态变化过程:3.算法的实现:iclosedge012345UV-UKadjvexlowcostv10v35v10v62v36v30v
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 连通性 最小 生成 算法 思想 幻灯片
限制150内