关键路径—AOE网(C++)
AOE网(边表示活动的网):【AOE网(activity on edge network)】
在一个表示工程的带权有向图中,用顶点表示事件,用有向边表示活动,边上的权值表示活动的持续时间。
AOE网的性质:
(1)只有在进入某顶点的各活动都已经结束,该顶点所代表的事件才能发生
(2)只有在某顶点所代表的事件发生后,从该顶点出发的各活动才能开始
AOE网能够解决什么问题?
(1) 完成整个工程至少需要多少时间?
(2)为缩短完成工程所需的时间, 应当加快哪些活动?
关键路径:AOE网中从源点到终点的最长路径
关键活动:关键路径上的活动【关键活动的开始时间不能推迟】
【 关键活动的最早开始时间和最晚开始时间相等】
算法:关键路径算法
输入:带权有向图 G=(V,E)
输出:关键活动
1. 计算各个活动的最早开始时间和最晚开始时间
2. 计算各个活动的时间余量,时间余量为 0 即为关键活动
设带权有向图 G=(V,E)含有 n 个顶点 e 条边,设置 4 个一维数组:
(1)事件的最早发生时间 ve[n]
(2)事件的最迟发生时间 vl[n]:
(3&