版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
《算法艺术与信息学竞赛》
教学幻灯片算法图论第七讲最小生成树第七讲最小生成树声明本系列教学幻灯片属于刘汝佳、黄亮著《算法艺术与信息学竞赛》配套幻灯片本幻灯片可从本书blog上免费下载,即使您并未购买本书.若作为教学使用,欢迎和作者联系以取得技术支持,也欢迎提供有不同针对性的修改版本,方便更多人使用有任何意见,欢迎在blog上评论Blog地址:第七讲最小生成树内容介绍一、最小生成树问题二、Boruvka算法三、Prim算法四、Kruskal算法五、MST唯一性判定六、瓶颈生成树第七讲最小生成树参考资料CLRSChapter23.MinimalSpanningTrees第七讲最小生成树一、最小生成树问题(MST)第七讲最小生成树定义连接每个点的连通图(一定是树)权和尽量小第七讲最小生成树一般最小生成树算法前提:无相等边维护生成森林Fe为无用边,若e的两个端点在F的同一个分量中,但e不在F中对于F的每一个分量从它出去(即恰好有一个端点在此分量内)的最小边为安全边不同的分量可以有相同的安全边结论:MST含有所有安全边,不含无用边.第七讲最小生成树一般最小生成树算法结论:MST含有所有安全边,不含无用边.证明假设有一个分量(黄色),它的安全边e不在T内.则u到v有唯一路径,它经过e’,它恰好有一个端点在黄色分量中.由于e是安全边,w(e)<w’(e),用e替换e’得到更小的T’,矛盾加入无用边将形成环第七讲最小生成树练习证明最小边属于某棵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的安全边用堆保存到每个顶点(而非边)的安全边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))第七讲最小生成树第七讲最小生成树第七讲最小生成树练习Kruskal返回的MST和边排序结果有关.证明对于任何一个MST,都有一个排序方法使得Kruskal返回此MST如果边权为1…|V|的整数,Kruskal的时间复杂度如何?如果边权在[0,1)上均匀分布,Kruskal和Prim哪个算法更快?计算出MST后,如果加一个顶点和它所关联的边,如何快速更新MST?第七讲最小生成树五、MST唯一性判定第七讲最小生成树MST唯一性判定考虑一般最小生成树算法每一个分量出发安全边唯一,不特殊处理,否则若同时添加会形成环,一定不唯一若同时添加不会形成环,类似正确性证明,即:假设某边e不在T中,对应的e’一定比e大而不可能相等第七讲最小生成树MST唯一性判定时间复杂度Boruvka:不变(只在和安全边比较时修改)Prim:不变(只在判断顶点标号时修改)Kruskal:不变(相等的边时特殊处理)另一种思路:最小=第二小第七讲最小生成树六、瓶颈生成树第七讲最小生成树基本问题边的最大值最小的生成树成为G的瓶颈生成树(bottleneckspanningtree),把其中最大的边称为它的权.显然,MST是一个瓶颈生成树,但是瓶颈生成树
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- PHP技术经理面试题及详细答案(实战版)
- Photoshop CS2 综合试题及详细参考答案
- 2025-2026学年湖北省安陆市初中政治九年级期末上册深度自测突破瓶颈题(详细参考解析)
- PCR检验技术考试试题及详细参考答案
- 净化空调安装工安全操作规程
- 机动车驾驶员三力测试题及答案
- 反复种植失败子宫内膜容受性评估流程标准共识
- PACK岗位上岗考核试题及详细答案
- 雨伞制作安全操作规程
- 水处理药剂投料配料工安全规程
- 2026秋小学岭南版美术三年级上册(新教材)教学计划含教学进度表
- 6.1 经济实力大幅跃升 (课件) 2026-2027学年统编版道德与法治 九年级上册
- 美国心脏协会(AHA)2025 版新生儿复苏指南(中文版)
- 2026年公文筐考试试题及答案
- 山西省企业技术中心认定评价工作指南(试行)
- 2026届高三下学期临门押题实战演练(一)语文+答案
- 城市轨道交通车辆-2.3城市轨道交通车辆车体实例认知
- 书香润心灵 阅读伴成长课件
- 信永中和校招笔试题库
- 服装陈列设计与展示课程
- NB-IoT技术原理与应用开发 -课件 第3章 NB-IoT空中接口
评论
0/150
提交评论