版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、算法艺术与信息学竞赛教学幻灯片,算法图论 第七讲 最小生成树,声明,本系列教学幻灯片属于刘汝佳、黄亮著算法艺术与信息学竞赛配套幻灯片 本幻灯片可从本书blog上免费下载,即使您并未购买本书. 若作为教学使用,欢迎和作者联系以取得技术支持,也欢迎提供有不同针对性的修改版本,方便更多人使用 有任何意见,欢迎在blog上评论 Blog地址:,内容介绍,一、最小生成树问题 二、Boruvka算法 三、Prim算法 四、Kruskal算法 五、MST唯一性判定 六、瓶颈生成树,参考资料,CLRS Chapter 23. Minimal Spanning Trees,一、最小生成树问题(MST),定义,连
2、接每个点的连通图(一定是树) 权和尽量小,一般最小生成树算法,前提: 无相等边 维护生成森林F e为无用边, 若e的两个端点在F的同一个分量中, 但e不在F中 对于F的每一个分量 从它出去(即恰好有一个端点在此分量内)的最小边为安全边 不同的分量可以有相同的安全边 结论: MST含有所有安全边, 不含无用边.,一般最小生成树算法,结论: MST含有所有安全边, 不含无用边. 证明 假设有一个分量(黄色), 它的安全边e不在T内. 则u到v有唯一路径, 它经过e, 它恰好有一个端点在黄色分量中. 由于e是安全边, w(e)w(e), 用e替换e得到更小的T, 矛盾 加入无用边将形成环,练习,证明
3、最小边属于某棵MST中 对于某环上的最大边e, 证明原图中删除e后的MST和原来的相同 在图中减小一个边的权, 求新的MST 情况一: e在原MST中 情况二: e不在原MST中,二、Borovka算法,Boruvka算法,由Boruvka于1926年提出(早于图论产生!),Boruvka算法,每个分量设置leader, 用DFS在m时间内求出 检查每条边一次以修正各分量的安全边权 第i次迭代每个分量大小至少为2i 最多logV次迭代, 总O(ElogV),三、Prim算法,Prim算法,Prim提出, 但事实上Jarnik于1930于年更早提出 只关心一棵树T, 每次加入T的安全边 用堆保存
4、到每个顶点(而非边)的安全边 Insert/ExtractMin调用V次, DecreaseKey调用E次 二叉堆: O(E+V)logV), Fibonacci堆: O(E+VlogV),练习,给定邻接矩阵, 设计一个O(V2)算法 对于稀疏图中, 用k次Boruvka迭代可以加速MST计算. 如何选取k, 使得k次迭代以后调用Prim算法的时间复杂度变为O(EloglogV),四、Kruskal算法,Kruskal算法,Kruskal, 1956年提出 把边从小到大排序, 每次填加一个安全边 如何知道边是否安全? 并查集, 每次约O(1) 总O(ElogE + E(V),练习,Kruska
5、l返回的MST和边排序结果有关. 证明对于任何一个MST, 都有一个排序方法使得Kruskal返回此MST 如果边权为1|V|的整数, Kruskal的时间复杂度如何? 如果边权在0, 1)上均匀分布, Kruskal和Prim哪个算法更快? 计算出MST后, 如果加一个顶点和它所关联的边, 如何快速更新MST?,五、MST唯一性判定,MST唯一性判定,考虑一般最小生成树算法 每一个分量出发安全边唯一, 不特殊处理, 否则 若同时添加会形成环, 一定不唯一 若同时添加不会形成环, 类似正确性证明, 即: 假设某边e不在T中, 对应的e一定比e大而不可能相等,MST唯一性判定,时间复杂度 Boruvka: 不变(只在和安全边比较时修改) Prim: 不变(只在判断顶点标号时修改) Kruskal: 不变(相等的边时特殊处理) 另一种思路: 最小=第二小,六、瓶颈生成树,基本问题,边的最大值最小的生成树成为G的瓶颈生成树(bottleneck spanning tree), 把其中最大的边称为它的权. 显然, MST是一个瓶颈生成
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年休克急救护理模拟试题及答案
- 2026年护理导论简答模拟试题(含答案)
- 2026年护理岗位护理实施模拟试题(含答案)
- 2026年小学体育招教模拟试题及答案
- 2026年河北教师招模拟试卷带答案
- 2026年排球简单理论模拟试题及参考答案
- 小学语文2026教资面试结构化问答试卷及答案
- 2026年lng安全模拟试题带答案
- 2026年财税审计模拟考试卷(含答案)
- 2026年护理专升本模拟试卷带答案
- DB65T 8061-2026 既有建筑改造工程消防设计规程
- 秋冬防病小课堂 小学传染病预防课件
- 2026年中国邮政集团有限公司江苏省分公司人员招聘考试备考试题及答案
- 2026新教材语文 统编版语文六年级上册 第20课 文言文二则
- 建筑行业施工现场安全资料管理培训
- 2026年第七届国家版图知识竞赛(中小学组)赛前必练题库(全新版)
- 空调维保服务人员配置计划方案
- 斯卡特门窗销售合同
- 水闸值班管理制度
- 特征值特征向量的课件
- 2025年质量安全管理人员考试试卷附答案
评论
0/150
提交评论