版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
图的连通性问题第1页,共16页,2023年,2月20日,星期六£7.4图的连通性问题£7.4.1无向图的连通分量和生成树广度优先生成树:在连通图中,由广度优先搜索得到的生成树。(1)连通图在对无向图进行遍历时,对于连通图,仅需从图中任一顶点出发,进行深度优先搜索或广度优先搜索,便可访问到图中所有结点。深度优先生成树:在连通图中,由深度优先搜索得到的生成树。(2)非连通图在对无向图进行遍历时,对于非连通图,需从多个顶点出发进行搜索,而每一次从一个新的起始点出发进行搜索过程中得到的顶点访问序列恰为其各个连通分量中的顶点集。生成森林:在非连通图中,每个连通分量中的顶点集和遍历时走过的边一起构成若干棵生成树,这些连通分量的生成树组成非连通图的生成森林。
深度优先生成森林:在非连通图中,由深度优先搜索得到的生成森林。
广度优先生成森林:在非连通图中,由广度优先搜索得到的生成森林。第2页,共16页,2023年,2月20日,星期六图7.11生成树和生成森林A1L2F6C7M3J4B5D8E9G10K11I13H12
(c) 图7.3(a)G3的深度优先生成森林(a)无向图G3
G3ABCDE
FGH
IKLM
J第3页,共16页,2023年,2月20日,星期六(连通网的)最小生成树
假设要在n个城市之间建立通讯联络网,则连通n个城市只需要修建n-1条线路,如何在最节省经费的前提下建立这个通讯网?问题:第4页,共16页,2023年,2月20日,星期六构造网的一棵最小生成树,即:在e条带权的边中选取n-1条边(不构成回路),使“权值之和”为最小。算法二:(克鲁斯卡尔算法)该问题等价于:算法一:(普里姆算法)第5页,共16页,2023年,2月20日,星期六
取图中任意一个顶点v作为生成树的根,之后往生成树上添加新的顶点w。在添加的顶点w和已经在生成树上的顶点v之间必定存在一条边,并且该边的权值在所有连通顶点v和w之间的边中取值最小。之后继续往生成树上添加顶点,直至生成树上含有n-1个顶点为止。普里姆算法的基本思想:第6页,共16页,2023年,2月20日,星期六abcdegf195141827168213127例如:aedcbgf148531621所得生成树权值和=14+8+3+5+16+21=67第7页,共16页,2023年,2月20日,星期六在生成树的构造过程中,图中n个顶点分属两个集合:已落在生成树上的顶点集U
和尚未落在生成树上的顶点集V-U
,则应在所有连通U中顶点和V-U中顶点的边中选取权值最小的边。
一般情况下所添加的顶点应满足下列条件:UV-U第8页,共16页,2023年,2月20日,星期六设置一个辅助数组,对当前V-U集中的每个顶点,记录和顶点集U中顶点相连接的代价最小的边:struct{VertexTypeadjvex;//U集中的顶点序号
VRTypelowcost;//边的权值}closedge[MAX_VERTEX_NUM];第9页,共16页,2023年,2月20日,星期六abcdegf195141827168213127aedcbaaa19141814例如:e12ee8168d3dd7213c55
19mm14m18195712mmm53mmmm73821m1412m8m16mmm21m2718mmm1627第10页,共16页,2023年,2月20日,星期六voidMiniSpanTree_P(MGraphG,VertexTypeu){//用普里姆算法从顶点u出发构造网G的最小生成树
k=LocateVex(G,u);
for(j=0;j<G.vexnum;++j)//辅助数组初始化
if(j!=k)
closedge[j]={u,G.arcs[k][j].adj};
closedge[k].lowcost=0;//初始,U={u}
for(i=0;i<G.vexnum;++i){}继续向生成树上添加顶点;第11页,共16页,2023年,2月20日,星期六
k=minimum(closedge);
//求出加入生成树的下一个顶点(k)
printf(closedge[k].adjvex,G.vexs[k]);//输出生成树上一条边
closedge[k].lowcost=0;//第k顶点并入U集
for(j=0;j<G.vexnum;++j)//修改其它顶点的最小边
if(G.arcs[k][j].adj<closedge[j].lowcost)closedge[j]={G.vexs[k],G.arcs[k][j].adj};
第12页,共16页,2023年,2月20日,星期六具体做法:先构造一个只含n个顶点的子图SG,然后从权值最小的边开始,若它的添加不使SG中产生回路,则在SG上加上这条边,如此重复,直至加上n-1条边为止。考虑问题的出发点:为使生成树上边的权值之和达到最小,则应使生成树中每一条边的权值尽可能地小。克鲁斯卡尔算法的基本思想:第13页,共16页,2023年,2月20日,星期六abcdegf195141827168213127aedcbgf148531621例如:7121819第14页,共16页,2023年,2月20日,星期六算法描述:构造非连通图ST=(V,{});k=i=0;//k计选中的边数
while(k<n-1){++i;
检查边集E中第i条权值最小的边(u,v);
若
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025四川九洲千城置业有限责任公司招聘会计核算岗1人笔试历年参考题库附带答案详解
- 2025中煤绿能有限公司本部及所属企业招聘笔试历年参考题库附带答案详解
- 企业员工培训课程开发与实施预案
- 2026南非黄金开采业行业现状矿产储备价格波动投资风险评估发展规划分析研究报告
- 淡水珍珠养殖工安全生产基础知识强化考核试卷含答案
- 2026南欧葡萄牙旅游服务业市场发展现状研究及投资风险评估策略分析报告
- 2026南极海洋资源开发竞争格局现状分析投资风险评估政策影响报告
- 2026南亚次大陆软件外包产业发展现状分析及投资前景规划研究报告
- 化学水处理工常识知识考核试卷含答案
- 《食物中的有机物》化学授课课件教案
- 2025至2030中国液晶聚合物(LCP)行业深度研究及发展前景投资评估分析
- 干熄焦高级工培训
- 2025年12月广东深圳市大鹏新区商务局招聘编外人员1人考试笔试备考题库及答案解析
- 2025年10月自考15040习概论试题及答案
- DB51-T 3313-2025 同步摊铺超薄沥青混凝土施工技术规程
- 2025年广西物理高考真题及答案
- DB37-T 5345-2025 《建筑工程流态固化土应用技术规程》
- (2025年)《成本会计》期末测试试卷及答案
- 脑出血早期康复课件
- 员工心理契约的管理
- 2025年大学《智慧林业-林业大数据分析》考试备考题库及答案解析
评论
0/150
提交评论