数据结构中关键路径算法的实现与应用

本文介绍了如何在AOE网络中求解关键路径,通过分析活动的持续时间和依赖关系,找到影响工程进度的关键路径。设计了算法并提供计算机实现,通过创建图形、搜索最大路径来确定关键路径,有助于理解工程所需的最短时间。
摘要由CSDN通过智能技术生成

分享一下我老师大神的人工智能教程。零基础!通俗易懂!风趣幽默!还带黄段子!希望你也加入到我们人工智能的队伍中来!https://blog.csdn.net/jiangjunshow

               

    介绍求关键路经的算法,对于给出的事件结点网络,要求求出从起点到终点的所有路径,经分析、比较后找出长读最大的路径,从而得出求关键路径的算法,并给出计算机上机实现的源程序。

关键词  关键路径 最少时间

1:引言<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

通常把计划、施工过程、生产流程、程序流程的都当成一个工程。除了很小的工程外、一般都把工程分为若干个叫做“活动”的子工程。完成了这些“活动”的子工程,这个工程就可以完成了。

通常我们用有向图表示一个工程。在这种有向图中,用顶点表示活动,用有向边

<Vi,Vj>表示活动Vi必须先于活动Vj进行。如果在无有向环的带权有向图中用有向边表示一个工程中的各项活动(ACTIVITY),用有向边上的权值表示活动的持续时间(DURATION),用顶点表示事件(EVENT),则这种的有向图叫做用边表示活动的网络,简称AOEactive on edges)网络。

    AOE网络在某些工程估算方面非常有用。他可以使人们了解:

         1):研究某个工程至少需要多少时间?

         2):那些活动是影响工程进度的关键?

AOE网络中,有些活动可以并行的进行。从源点到各个顶点,以至从源点到汇点的有向路径可能不止一条。这些路径的长度也可能不同。完成不同路径的活动所需的时间虽然不同,但只有各条路径上所有活动都完成了,这个工程才算完成。因此,完成整个工程所需的时间取决于从源点到汇点的最长路径长度,即在这条路径上所有活动的持续时间之和。这条路径长度就叫做关键路径(critical path)。

2:设计步骤:

    1: 以某一工程为蓝本,采用图的结构表示实际的工程计划的时间。

    2: 调查以分析和预测这个工程计划个阶段的时间。

           3: 用调查的结果建立AOE网(Activity On Edge Network),即边表示活动的网络,并用图的形式表示。

4: 用图来存储这些信息。

        5: CreateGraphic();函数建立AOE图。

        6: SearchMapPath();函数求出最大路径,并打印出关键路径。

        7:编写代码

        8: 测试

3: 设计代码:

#include<stdio.h>

#include<stdlib.h>

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值