有向无环图的应用
本讲内容
1.有向无环图的定义
2.有向无环图的应用
拓扑排序
关键路径
有向无环图的定义
一个没有环的有向图称为有向无环
图,简称DAG图。
重要应用
拓扑排序
关键路径
有向无环图的应用一——拓扑排序
举例
一个计算机技术应用专业的学生必须学习的基
础课程有:
课程代号
课程名称
先修课程
C1
C2
C3
C4
C5
C6
C7
高等数学
程序设计
离散数学
数据结构
编译原理
操作系统
计算机组成原理
无
无
C1
C2 C3
C2 C4
C4 C7
C2
c1
c3
c4
c6
c7
c2
c5
用顶点表示活动,用弧表示
活动间的优先关系的有向图
称为Activity On Vertex
Network( AOV-网 )。
前驱、后继、直接前驱、直
接后继
学习顺序:
c1 c3 c2 c4 c7 c6 c5
c2 c7 c1 c3 c4 c5 c6
何谓“拓扑排序”?
假设以有向图表示一个工程的施工图或程序的
数据流图(AOV网),则图中不允许出现回路。
检查有向图中是否存在回路的方法之
按照有向图给出的次序关系,将图中顶点排
成一个线性序列,对于有向图中没有限定次
一,是对有向图进行拓扑排序。
序关系的顶点,则可以人为加上任意的次序
关系。由此所得顶点的线性序列称之为拓扑
有序序列。
例如:对于下列有向图
A
B
C
D
可求得拓扑有序序列:
A B C D 或 A C B D
反之,对于下列有向图
A
B
C
D
不能求得它的拓扑有序序列。
因为图中存在一个回路 {B, C, D}