数据结构课程设计--关键路径算法

数据结构课程设计--关键路径算法

ID:35625277

大小:589.50 KB

页数:26页

时间:2019-04-03

数据结构课程设计--关键路径算法_第1页
数据结构课程设计--关键路径算法_第2页
数据结构课程设计--关键路径算法_第3页
数据结构课程设计--关键路径算法_第4页
数据结构课程设计--关键路径算法_第5页
资源描述:

《数据结构课程设计--关键路径算法》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、淮阴工学院实践报告数据结构课程设计设计题目:关键路径算法系别:专业:班级:学生姓名:学号:起止日期:2012年12月23日~2013年01月06日指导教师:—3—摘要:关键路径是我们估算某些工程非常有用,是一种非常重要的估算一项工程所需的最短时间的依据。本文对如何求一个工程的关键路径做了详细的说明,包括需求分析、概要设计、详细设计、测试与分析、总结、源程序清单。首先,做了需求分析,解释了什么是关键路径,并指出它在估算工程中的重要作用。然后给出求关键路径的概要设计,包括程序中用到的所有抽象数据类型的定义,主程序的流程以及各程序模块之间的层次(调用)关系。在概要设计的基础上,又给出了详

2、细的算法设计,实现概要设计中定义的所有函数,对每个函数写出核心算法,并画出了流程图。然后对编码进行了测试与分析(并在最后附上C语言编写的程序代码)。最后对整个设计过程进行了总结。关键词:关键路径,抽象数据类型,程序模块,核心算法,流程图—3——3—目录1绪论-2-1.1前言-2-1.2研究意义-2-1.3结构安排-2-2需求分析-2-2.1问题描述-2-2.2基本要求-2-2.3目的-3-3概要设计-3-3.1算法分析-3-3.2算法步骤-4-3.3数据结构-4-4详细设计-5-4.1主要函数的核心代码-5-4.2程序流程图-6-5测试-2-6总结-2-参考文献-2-附录:源程序清

3、单-2-—3——3—1绪论1.1前言我们通常把计划、施工过程、生产流程、程序流程等都当成一个工程。工程通常分为若干个称为“活动”的子工程。完成了这些“活动”,这个工程就可以完成了。我们通常用AOE-网来表示工程。AOE-网是一个带权的有向无环图,其中,顶点表示事件(EVENT),弧表示活动,权表示活动持续的时间。AOE-网可以用来估算工程的完成时间。他可以使人们了解:研究某个工程至少需要多少时间?哪些活动是影响工程进度的关键?由于AOE-网中的有些活动可以并行进行,从开始点到各个顶点,以致从开始点到完成点的有向路径可能不止一条,这些路径的长度也可能不同。完成不同路径的活动所需的时间

4、虽然不同,但只有各条路径上所有活动都完成了,这个工程才算完成。因此,完成工程所需的最短时间是从开始点到完成点的最长路径的长度,即在这条路径上的所有活动的持续时间之和.这条路径长度就叫做关键路径(CriticalPath)。1.2研究意义关键路径可以很方便的让我们估算出某个工程最短的时间开销,以及这个工程中哪些活动,即哪些项目是主要的,是影响工程进度的关键,从而让我们对工程的实施作出更好的时间安排,并且可以分清主次,抓住核心工程,做到有的放矢。总的来说,正因为关键路径可以帮助我们对工程进行非常有必要的估算,让我们得以看清全局,作出更为优化的安排,所以可见关键路径的求出对一项工程而言是

5、非常必要的。这亦是本次对关键路径求法的研究意义所在。1.3结构安排第一章绪论介绍了研究背景以及研究意义。—3—第二章需求分析介绍了问题描述以及基本要求,和这次课程设计所需达到的目的。第三章概要设计主要介绍了求关键路径的算法分析,算法步骤,和数据结构,其中数据结构包括了基本的抽象数据结构,所要用到的函数模块,以及各模块之间的调用关系。第四章详细设计介绍了主要函数及其核心代码,以及程序流程图。第五章对程序代码进行了测试。第六章对这次数据结构课程设计进行了总结。参考文献。附录:原程序清单。—3—2需求分析2.1问题描述(1)选取建图的一种算法建立图,有邻接矩阵,邻接表,十字链表,邻接多重

6、表等多种方法,要选取一种适当的方法建立图,才能提高算法效率,降低时间复杂度和空间复杂度。(2)两个相邻顶点与它们之间的边表示活动,边上的数字表示活动延续的时间。对于给出的事件AOE网络,要求求出从起点到终点的所有路径,经分析、比较后找出长读最大的路径,从而得出求关键路径的算法,并给出计算机上机实现的源程序。完成不同路径的活动所需的时间虽然不同,但只有各条路径上所有活动都完成了,这个工程才算完成。具体要解决的问题有如下四个:1)将项目中的各项活动视为有一个时间属性的结点,从项目起点到终点进行排列;2)用有方向的线段标出各结点的紧前活动和紧后活动的关系,使之成为一个有方向的网络图;3)

7、用正推法和逆推法计算出各个活动的最早开始时间,最晚开始时间,最早完工时间和最迟完工时间,并计算出各个活动的时差;4)找出所有时差为零的活动所组成的路线,即为关键路径;2.2基本要求(1)选取建图的一种算法建立图;选取邻接表的算法来建立图,是一种顺序+链式存储结构。用顺序表存放顶点,为每个顶点建立一个单链表,单链表中的结点表示依附于该顶点的边或以该顶点为尾的弧。(2)两个相邻顶点与它们之间的边表示活动,边上的数字表示活动延续的时间参照该工程所化的AOE-网,求出从起点到

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。