关键路径讲解

关键路径详解

最近数据结构刚刚学到关键路径这里,老师为了赶进度开始讲的飞快,可能上课一不留神就会跟不上老师的思路与节奏,只好课下自己学习一下关键路径,这里给他做一个总结,也算是自己的一种记录。
在这里插入图片描述
这是一个简单的AOE网,它是一个有向边的图,每两个节点之间的a0,a1之类的东西叫做时间,最后我们求得关键路径也和他们有关系。事件后面跟着的数字是权值,我们可以理解为做完这个事件所需要的时间。首先我们要知道我们要求的关键路径是什么,关键路径就是这个时间所需要完成的最早时间和最晚时间一样,说明这个时间必须再规定的时间内完成没有回旋的余地,我们把最早完成时间和最迟完成时间一样的事件点叫做关键路径点,它们所连接起来的也就是关键路径。
在求a0,a1等这些事件的最早和最迟完成时间之前我们需要求v0,v1等这些节点的最早和最晚时间。
我们在求最早完成时间的时候从AOE网的入点开始求也就是v0开始求。因为v0是初始的事件所以它的最早完成时间是0,v1的最早完成时间是v0的最早完成时间+a0事件的完成时间,所以v1最早完成时间是6,同理v2=a1=4,v3=a2=5,当求v4的最早完成时间的时候,我峨嵋你会发现完成v4有两条路径,一个是从v1过来,另一个是从v2过来,如果从v1过来所需时间为v1+a3=7,从v2过来所需时间为v2+a4=5因为我们要求v4的最早完成时间所以我们选择v4的最早完成时间是两个当中比较大的那一个可能会有人问了不是最早完成时间吗,那不应该是选择小的那一个吗,如果我们选择了小的那一个,那么只能完成v2过来的事件但是v1过来的事件就没法完成了,同理可得v5=v3+a5=7, v6=v4+a6=16, v7=v4+a7=14, v8=v6+a9=18
在这里插入图片描述

然后我们求这些节点的最晚完成时间,这个时候我们需要从AOE网的最后一个节点开始计算,这个节点的最晚发生时间为在这里插入图片描述
就是它的下一个节点减去时间权值后最小的那个
在这里插入图片描述
这是从v1到v8的最迟时间,举个例子v4就等于从 v6的最早完成时间减去a6和v7的最早完成时间减去a7中选择最小的一个,而最早完成时间就要根据我们之前所求的了

在这里插入图片描述

然后我们要求活动的最早完成时间和最晚完成时间,这个时候有一个技巧,求最早完成时间的时候就直接去找有向箭头的箭尾事件的最早完成时间,最迟完成时间就是有向箭头箭头事件的最迟完成时间减去活动完成时间(权值)

求完之后结果如下
在这里插入图片描述

最后我们只要选择活动中最早完成时间和最晚完成时间相等的活动就是关键路径上的活动
在这里插入图片描述

a0 a3 a6 a7 a9 a10 就是关键路径上的关键活动
它们所在的路径也就是我们所要求的关键路径了,就是上面那个图中标红色的。

  • 4
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值