算法艺术与信息学竞赛 教学幻灯片,算法图论 第三讲 DAG的算法,声明,本系列教学幻灯片属于刘汝佳、黄亮著算法艺术与信息学竞赛配套幻灯片 本幻灯片可从本书blog上免费下载,即使您并未购买本书. 若作为教学使用,欢迎和作者联系以取得技术支持,也欢迎提供有不同针对性的修改版本,方便更多人使用 有任何意见,欢迎在blog上评论 Blog地址:http:/,内容介绍,一、拓扑排序 二、关键路径,一、拓扑排序,拓扑顺序,穿衣服的顺序,拓扑排序算法,对图G使用DFS算法, 每次把一个结点变黑的同时加到链表首部 定理1: 有向图是DAG当且仅当没有B边 如果有B边, 有环(易证) 如果有环c, 考虑其中第一个被发现的结点v, 环中v的上一个结点为u, 则沿环的路径vu是白色路径, 有白色路径定理, u是v的后代, 因此(u, v)是B边 定理2: 该算法正确的得到了一个拓扑顺序,练习,举例说明存在一个图G和它的一个拓扑顺序, 拓扑排序算法无法得到此序(不管结点排列顺序如何) 设计一个算法判断无向图是否含圈. 时间复杂度应为O(V), 和E无关 每次找0度点, 用队列设计一个O(V+E)时间的算法,参考资料,CLRS 22.4: Topological Sort,