版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、1 算法艺术与信息学竞赛 第七讲 最小生成树 2 声明 本系列教学幻灯片属于刘汝佳、黄亮著 算法艺术与信息学竞赛配套幻灯片 本幻灯片可从本书blog上免费下载,即使您 并未购买本书. 若作为教学使用,欢迎和作者联系以取得 技术支持,也欢迎提供有不同针对性的修 改版本,方便更多人使用 有任何意见,欢迎在blog上评论 Blog地址:http:/ 3 内容介绍 一、最小生成树问题 二、Boruvka算法 三、Prim算法 四、Kruskal算法 五、MST唯一性判定 六、瓶颈生成树 4 参考资料 CLRS Chapter 23. Minimal Spanning Trees 5 一、最小生成树问题
2、一、最小生成树问题(MST) 6 定义 连接每个点的连通图(一定是树) 权和尽量小 7 一般最小生成树算法 前提: 无相等边 维护生成森林F e为无用边无用边, 若e的两个端点在F的同一个分 量中, 但e不在F中 对于F的每一个分量 从它出去(即恰好有一个端点在此分量内)的最 小边为安全边安全边 不同的分量可以有相同的安全边 结论: MST含有所有安全边, 不含无用边. 8 一般最小生成树算法 结论: MST含有所有安全边, 不含无用边. 证明 假设有一个分量(黄色), 它的安全边e不在T内. 则u到 v有唯一路径, 它经过e, 它恰好有一个端点在黄色分 量中. 由于e是安全边, w(e)w(
3、e), 用e替换e得到更 小的T, 矛盾 加入无用边将形成环 9 练习 证明最小边属于某棵MST中 对于某环上的最大边e, 证明原图中删除e后 的MST和原来的相同 在图中减小一个边的权, 求新的MST 情况一: e在原MST中 情况二: e不在原MST中 10 二、二、Borovka算法算法 11 Boruvka算法 由Boruvka于1926年提出(早于图论产生!) 12 Boruvka算法 每个分量设置leader, 用DFS在m时间内求出 检查每条边一次以修正各分量的安全边权 第i次迭代每个分量大小至少为2i 最多logV次迭代, 总O(ElogV) 13 三、三、Prim算法算法 1
4、4 Prim算法 Prim提出, 但事实上Jarnik于1930于年更早提出 只关心一棵树T, 每次加入T的安全边 用堆保存到每个顶点(而非边)的安全边 Insert/ExtractMin调用V次, DecreaseKey调用E次 二叉堆: O(E+V)logV), Fibonacci堆: O(E+VlogV) 15 16 练习 给定邻接矩阵, 设计一个O(V2)算法 对于稀疏图中, 用k次Boruvka迭代可以加速 MST计算. 如何选取k, 使得k次迭代以后调 用Prim算法的时间复杂度变为O(EloglogV) 17 四、四、Kruskal算法算法 18 Kruskal算法 Kruska
5、l, 1956年提出 把边从小到大排序, 每次填加一个安全边 如何知道边是否安全? 并查集, 每次约O(1) 总O(ElogE + E(V) 19 20 21 练习 Kruskal返回的MST和边排序结果有关. 证 明对于任何一个MST, 都有一个排序方法使 得Kruskal返回此MST 如果边权为1|V|的整数, Kruskal的时间复 杂度如何? 如果边权在0, 1)上均匀分布, Kruskal和 Prim哪个算法更快? 计算出MST后, 如果加一个顶点和它所关联 的边, 如何快速更新MST? 22 五、五、MST唯一性判定唯一性判定 23 MST唯一性判定 考虑一般最小生成树算法 每一个分量出发安全边唯一, 不特殊处理, 否则 若同时添加会形成环, 一定不唯一 若同时添加不会形成环, 类似正确性证明, 即: 假设某边e不在T中, 对应的e一定比e大而不可能相等 24 MST唯一性判定 时间复杂度 Boruvka: 不变(只在和安全边比较时修改) Prim: 不变(只在判断顶点标号时修改) Kruskal: 不变(相等的边时特殊处理) 另一种思路: 最小=第二小 25 六、瓶颈生成树六、瓶颈生成树 26 基本问题 边的最大值最小的生成树成为G的瓶颈生成 树(bottleneck spanning tree), 把其中最大 的边称为它的权. 显然, MST是一
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024葡萄酒年份酒经销商售后服务与销售合同3篇
- 2024药品质量检验与监管合同
- 二零二四年委托创作合同:原创音乐作品委托创作协议
- 二零二五年度绿色复垦土地流转合同模板3篇
- 二零二五年度大巴车租赁与绿色出行宣传合同3篇
- 2025年度餐饮店食品安全风险评估合同9篇
- 二零二四年三人共同投资大数据科技公司合同3篇
- 2025年度铁路旅游列车运营管理合同3篇
- 2025年度绿色家居产品认证服务合同简易版2篇
- 2024年环境工程监理研发合同
- 专升本英语阅读理解50篇
- 施工单位值班人员安全交底和要求
- 中国保险用户需求趋势洞察报告
- 数字化转型指南 星展银行如何成为“全球最佳银行”
- 中餐烹饪技法大全
- 灵芝孢子油减毒作用课件
- 现场工艺纪律检查表
- 医院品管圈与护理质量持续改进PDCA案例降低ICU病人失禁性皮炎发生率
- 新型电力系统研究
- 烘干厂股东合作协议书
- 法院服务外包投标方案(技术标)
评论
0/150
提交评论