数据结构求键路径实习报告.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数据结构求键路径实习报告

河 南 工 程 学 院 实 习 报 告 系(部) 专 业 班 级 姓 名 学 号 2011 年 7月 1日 实 习 (训) 报 告 评 语 等 级: 评阅人: 职称: 年 月 日 河南工程学院 实习(训)报告 实习内容: 关键路径问题 实习时间:自 6 月 27 日 至 7 月 1 日 共 5 天 实习地点: 实习单位: 指导教师: 系主任: 目 录 一、设计目标 1 二、课题分析与设计 2 1.课题需求分析 2 2.存储结构设计 2 3.算法设计 3 4.程序流程图 4 三、程序清单 5 四、测试 9 1.测试数据 9 2.测试结果及分析 9 五、总结 11 1.收获 11 2.不足 11 3.算法改进分析 11 一、设计目标 用带权有向图构造的AOE网表示一项工程计划,图的结点表示事件,弧表示活动,权值表示活动持续时间。 完成工程的最短时间是从开始点到完成点的最长路径的长度。路径长度最长的路径叫关键路径。关键路径上的所有活动都是关键活动。 求关键路径必须在拓扑排序的前提下进行,有环图不能求关键路径;只有缩短关键活动的工期才有可能缩短工期;若一个关键活动不在所有的关键路径上,减少它并不能减少工期;只有在不改变关键路径的前提下,缩短关键活动才能缩短整个工期。 本次实训设计程序,任意给出表示工程计划的顶点及带权弧的有向图信息,即可判断整项工程计划是否合理,求出工程计划中的关键路径及关键活动。完成整项工程至少需要的时间。 二、课题分析与设计 1.课题需求分析 1.1问题描述: (1)选取建图的一种算法建立图,有邻接矩阵,邻接表,十字链表,邻接多重表等多种方法,要选取一种适当的方法建立图,才能提高算法效率,降低时间复杂度和空间复杂度。 (2)两个相邻顶点与它们之间的边表示活动,边上的数字表示活动延续的时间。对于给出的事件AOE网络,要求求出从起点到终点的所有路径,经分析、比较后找出长读最大的路径,从而得出求关键路径的算法,并给出计算机上机实现的源程序。完成不同路径的活动所需的时间虽然不同,但只有各条路径上所有活动都完成了,这个工程才算完成。 具体要解决的问题有如下四个: 1) 将项目中的各项活动视为有一个时间属性的结点,从项目起点到终点进行排列; 2) 用有方向的线段标出各结点的紧前活动和紧后活动的关系,使之成为一个有方向的网络图; 3) 用正推法和逆推法计算出各个活动的最早开始时间,最晚开始时间,最早完工时间和最迟完工时间,并计算出各个活动的时差; 4) 找出所有时差为零的活动所组成的路线,即为关键路径; 1.2 基本要求 (1)选取建图的一种算法建立图; 选取邻接表的算法来建立图,是一种顺序+ 链式存储结构。用顺序表存放顶点,为每个顶点建立一个单链表,单链表中的结点表示依附于该顶点的边或以该顶点为尾的弧。 (2)两个相邻顶点与它们之间的边表示活动,边上的数字表示活动延续的时间。参照该工程所化的AOE-网,求出从起点到终点的所有路径,然后通过拓扑排序和逆拓扑排序求出最早与最晚发生时间,找出长度最大的路径,从而求得关键路径。 2.存储结构设计 对于带权有向图构造的AOE网,采用链式存储结构,定义的结构体如下: typedef struct node //定义表结点 { int adjvex; //该弧所指向的顶点的位置 int dut; //弧的权值 struct node *next; //指向下一条弧的指针 }edgenode; typedef struct //定义头结点 { int projectname; //顶点信息 int id; //结点入度 edgen

文档评论(0)

jiqingyong1 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档