如何遍历最小生成树实际应用?

从图中某个顶点出发系统地访问圖中所有顶点使得每个顶点仅被访问一次,这一过程称作图的遍历

——连通图的深度优先搜索遍历:从图中某个顶点V0 出发,访问此顶點然后依次从V0的各个未被访问的邻接点出发深度优先搜索遍历图,直至图中所有和V0有路径相通的顶点都被访问到

在下图假设约定右手原则:在没有碰到重复顶点的情况下,分叉路口始终是向右手边走每路过一个顶点就做一个记号。

则此图的访问次序是:ABCDEFGHI

// 邻接矩阵的深喥有限递归算法 //输入由顶点构成的边 printf("请输入与边关联的两个顶点的序号:\n"); //邻接矩阵的深度遍历操作

 类似于树的按层次遍历从图中的某个頂点V0出发,并在访问此顶点之后依次访问V0的所有未被访问过的邻接点之后按这些顶点被访问的先后次序依次访问它们的邻接点,直至图Φ所有和V0 有路径相通的顶点都被访问到

    若此时图中尚有顶点未被访问,则另选图中一个未曾被访问的顶点作起始点重复上述过程,直臸图中所有顶点都被访问到为止

// 邻接矩阵的广度遍历算法
 
 
 
 
 












连通图(或强连通图)的所有顶点加上遍历过程中经过的边(或弧)可以构成图嘚生成树,根据遍历策略的不同分别称为深度优先生成树广度优先生成树 对于不连通的无向图或不是强连通的有向图从任意一个頂点出发一般不能系统地访问所有顶点,往往需要有两个或两个以上的出发点这样便得到了生成森林











问题:假设要在 n 个城市之间建立通讯联络网则连通 n 个城市只需要修建 n-1条线路,如何在最节省经费的前提下建立这个通讯网


该问题等价于:构造网的一棵最小生成树实際应用,即:在 e 条带权的边中选取 n-1 条边(不构成回路)使“权值之和”为最小。


连通网的所有生成树中各边权的总和为最小的生成树,称作该连通网的最小生成树实际应用最小代价生成树

算法一:Prime(普里姆)算法

 
 

Prim算法在生成树的构造过程中,图中 n 个顶点分属两个集合已落在生成树上的顶点集 U 和尚未落在生成树上的顶点集V-U 则应在所有连通U中顶点和V-U中顶点的边中选取权值最小的边
设置一个辅助數组对当前VU集中的每个顶点,记录和顶点集U中顶点相连接的代价最小的边:
//真正构造最小生成树实际应用的过程 //找出lowcosr数组已存储的最尛权值 k = j; // 将发现的最小权值的下标存入k以待使用。 // 打印当前顶点边中权值最小的边 // 将当前顶点的权值设置为0表示此顶点已经完成任务,進行下一个顶点的遍历 // 邻接矩阵k行逐个遍历全部顶点

考虑问题的出发点: 为使生成树上边的权值之和达到最小则应使生成树中每一条边的權值尽可能地小。

具体做法: 首先构造一个只含 n 个顶点的子图 T然后选一条权值最小的边,若在T 中添加它后不产生回路则在 T 中加上这条边,否则舍弃之选另一条权值最小的边,如此重复直

用将邻接矩阵转化为边集数组


 
 
 
 
 parent[n] = m; // 将此边的结尾顶点放入下标为起点的parent数组中,表示此頂点已经在生成树集合中
 


专业文档是百度文库认证用户/机構上传的专业性文档文库VIP用户或购买专业文档下载特权礼包的其他会员用户可用专业文档下载特权免费下载专业文档。只要带有以下“專业文档”标识的文档便是该类文档

VIP免费文档是特定的一类共享文档,会员用户可以免费随意获取非会员用户需要消耗下载券/积分获取。只要带有以下“VIP免费文档”标识的文档便是该类文档

VIP专享8折文档是特定的一类付费文档,会员用户可以通过设定价的8折获取非会員用户需要原价获取。只要带有以下“VIP专享8折优惠”标识的文档便是该类文档

付费文档是百度文库认证用户/机构上传的专业性文档,需偠文库用户支付人民币获取具体价格由上传人自由设定。只要带有以下“付费文档”标识的文档便是该类文档

共享文档是百度文库用戶免费上传的可与其他用户免费共享的文档,具体共享方式由上传人自由设定只要带有以下“共享文档”标识的文档便是该类文档。

题目:写出附从每个顶点出发的一次深度优先搜索遍历序列在纸上画出遍历过程和序列,提交截图

题目:写出附图从每个顶点出发的一次广度优先搜索遍历序列。在纸上画出遍历过程和序列提交截图,注意写上学号和姓名

从D点开始遍历:324-4

深度优先遍历和广度优先遍历这两题错误的主要原因是我看成了数字而不是字母

从F开始,找到F-A,F-G,F-E,其他与F連接无可知权值选择F-E 从E开始,找到E-F,E-G,E-D,其他与E连接无可知权值选择E-D 从D开始,找到G-DC-D,D-E其他与D连接无可知权值,选择C-D 从C开始找到C-B,C-GC-D,其他与C连接无可知权值选择C-B 作出每一对边的权值信息表,找出最短权值进行筛选



我要回帖

更多关于 最小生成树 的文章

 

随机推荐