图的拓扑排序
主要解决一个工程能否顺序进行的问题。
(1)基本概念
-
AOV网的定义:
在一个表示工程的有向图中,用顶点表示活动,用弧表示活动之间的优先关系,这样的有向图为顶点表示活动的网叫AOV网。 -
AOE网的定义:
在一个表示工程的带权邮有向图中,用顶点表示事件,用有向边表示活动,用边上的权值表示活动的持续时间,这种有向图的边表示活动的网,称为AOE网。(AOE网中没有入边的顶点称为始点,没有出边的顶点称为终点) -
拓扑序列的定义:
设G = (V,E)是一个具有n个顶点的有向图,V中的顶点序列V1、V2…Vn,若满足从顶点Vi1到Vj有一条路径,则在顶点序列中顶点Vi必须在顶点Vj之前(不能存在回路),则V中的这个顶点序列叫拓扑序列。 -
拓扑排序的定义:
对一个有向图构造拓扑序列的过程。
(2)对AOV网拓扑排序的思路(使用邻接表)
从AOV网中选择一个入度为0的顶点输出,然后删除此顶点,并删除以此顶点为尾的弧,继续重复此步骤,直到输出全部顶点或AOV网中不存在入度为0的顶点为止。
(3)对AOV网拓扑排序的举例
下图是一个AOV网