14. 计算工程完成的关键路径

说明: AOE 网络是有向无环加权图,其中顶点表示事件,弧表示活动,权表示活动持续的时间,通常可以用来估算工程完成的时间,即图中从开始点到结束点之间最长的路径对应的时间。请完成一个程序,完成下列任务:
1 、计算 AOE 网络对应的拓扑排序。如果排序结果不唯一,请输出按照从小到大的顺序排列的结果。从小到大的顺序就是输入的节点序列顺序(参见下面关于输入格式的说明)。如图1中满足要求的拓扑排序是: a-b-c-d-e-f-g-h-k ,图2中满足要求的拓扑排序是:v1-v3-v5-v2-v6-v4-v7-v8-v9
2 、计算 AOE 网络的关键路径。注意关键路径可能不唯一,要求输出所有的关键路径。同样,按照是按照从小到大的顺序输出。例,如果得到两条关键路径,分别是0-1-3-6-8-9和0-1-3-4-5-8-9,那么先输出后一条路径,因为两条路径中前三个节点相同,而后一条路径第四个节点的编号小。
测试用例的输入输出格式说明:
输入:
节点的个数,边的条数;
各个节点的名称序列
边: < 起点 , 终点 , 权值 > 。说明起点和终点是在各个点在输入序列中的位置,如图1中边 < a, b> 表示为 <0,1,6> 。
输出:
拓扑排序;
关键路径
测试用例0是与图1相对应的,测试用例1是与图2相对应的。

图1
图2

测试用例
用例1:
输入:
9,11
a,b,c,d,e,f,g,h,k,
<0,1,6>,<0,2,4>,<0,3,5>,<1,4,1>,<2,4,1>,<4,6,8>,<4,7,7>, < 3,5,2>,<5,7,4>,<6,8,2>,<7,8,4>
输出:
a-b-c-d-e-f-g-h-k
a-b-e-h-k
用例2:
输入:
9,11
v1,v2,v3,v4,v5,v6,v7,v8,v9,
<0,4,6>,<0,2,4>,<0,5,5>,<

  • 4
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
计算软件工程项目的关键路径需要以下步骤: 1. 绘制项目的网络图,包括所有的活动和它们之间的先后关系。 2. 计算每个活动的最早开始时间(Early Start,ES)和最早结束时间(Early Finish,EF)。最早开始时间是指在没有任何限制的情况下,该活动可以开始的最早时间;最早结束时间是指在没有任何限制的情况下,该活动可以完成的最早时间。计算方法为:ES = 前置活动的最早结束时间,EF = ES + 活动持续时间。 3. 计算每个活动的最晚开始时间(Late Start,LS)和最晚结束时间(Late Finish,LF)。最晚开始时间是指在不影响整个项目完成时间的前提下,该活动必须开始的最晚时间;最晚结束时间是指在不影响整个项目完成时间的前提下,该活动必须完成的最晚时间。计算方法为:LF = 后继活动的最晚开始时间,LS = LF - 活动持续时间。 4. 计算每个活动的总时差(Total Float,TF),即该活动可以延迟的最长时间。计算方法为:TF = LS – ES 或 TF = LF – EF。 5. 找到所有的关键路径,即总时差为0的路径。这些路径上的活动必须按照计划完成,否则将会影响整个项目的完成时间。 总之,计算关键路径需要通过绘制网络图、计算活动的起止时间和总时差等步骤,以确定项目中哪些活动是关键的,从而帮助项目管理者合理安排资源和时间,以确保项目按时完成
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值