关键路径分析

4 vb6

我正在尝试编写一个VB6程序(用于笑),它将计算事件时间+关键路径JUST基于PRECEDENCE TABLE.我希望我的学生将其用作检查机制,即.无需绘制活动网络即可完成所有工作.一旦我为每项活动开始和结束活动,我很高兴我可以做到这一切.如何在不绘制网络的情况下分配事件.我提出的所有内容都适用于特定的示例,然后不适用于另一个示例.我需要一个更通用的算法,它让我精神振奋.救命!

我不是一个专业的程序员 - 我在业余时间这样做来创建教学资源 - 简单的英语真的很感激.

Cha*_*tin 5

好的,所以你有一个优先级表,我把它作为一对像的表

A→B
B→C

等等,活动{A,B,C}.每个活动也有一个持续时间和(可能)持续时间的分布,所以你知道A需要3天,B需要2,依此类推.这将被解释为"必须在B之前完成,必须在C之前完成".

对?

现在,显而易见的事情是构建活动和箭头的图形 - 事实上,你基本上在图像中以入射列表形式存在.关键部分是最重量(最大的时间)路径.这是一个最长路径的问题,假设你的图表不是循环的(无论如何都是坏的),它可以通过拓扑排序传递闭包来解决.

  • 你不会有任何麻烦; 有两个或三个好的算法,并且伪代码在topo排序维基百科文章我链接.(PS.你*可以*赞成我的回答,他巧妙地暗示.) (2认同)