武汉理工大学 信息工程学院 数据结构 ppt 课件ch07_4 图4-拓扑排序和关键路径.pptVIP

武汉理工大学 信息工程学院 数据结构 ppt 课件ch07_4 图4-拓扑排序和关键路径.ppt

  1. 1、本文档共29页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
武汉理工大学 信息工程学院 数据结构 ppt 课件ch07_4 图4-拓扑排序和关键路径

第7章 图 7.5 有向无环图及其应用 拓扑排序 拓扑排序算法 7.5.2 AOE网与关键路径 作业 对以下带权有向赋权图进行拓扑排序,并求出每个事件的最早和最迟发生时间,每个活动的最早和最迟开始时间,确定关键路径。 * * 数据结构讲义 - 拓扑排序和关键路径 信息工程学院 魏洪涛 Email:greattide@163.com 7.5.1 AOV网与拓扑排序的概念 一、AOV网的概念 1.AOV网定义 在一个有向图中,若用顶点表示活动,有向边表示活动间先后关系,称该有向图叫做顶点表示活动的网络(Activity On Vertex network)简称为AOV网。 在AOV网中,若从顶点i到顶点j之间存在一条有向路径,称顶点i是顶点j的前驱,或者称顶点j是顶点i的后继。若i,j是图中的边,则称顶点i是顶点j的直接前驱,顶点j是顶点i的直接后继。 2.AOV网实际意义 现代化管理中, 通常我们把计划、施工过程、生产流程、程序流程等都当成一个工程,一个大的工程常常被划分成许多较小的子工程,这些子工程称为活动。在整个工程实施过程中,有些活动开始是以它的所有前序活动的结束为先决条件的,必须在其它有关活动完成之后才能开始,有些活动没有先决条件,可以 安排在任意时间开始。AOV网就是一种可以形象地反映出整个工程中各个活动之间前后关系的有向图。例如,计算机专业学生的课程开设可看成是一个工程,每一门课程就是工程中的活动,下页图给出了若干门所开设的课程,其中有些课程的开设有先后关系,有些则没有先后关系,有先后关系的课程必须按先后关系开设,如开设数据结构课程之前必须先学完程序设计基础及离散数学,而开设离散数学则必须先并行学完数学、程序设计基础课程。 在 (b)中,我们用一种有向图来表示课程开设 1.定义 给出有向图G=(V,E),对于V中的顶点的线性序列(vi1,vi2,...,vin),如果满足如下条件:若在G中从顶点 vi 到vj有一条路径,则在序列中顶点vi必在顶点 vj之前;则称该序列为 G的一个拓扑序列。 构造有向图的一个拓扑序列的过程称为拓扑排序。 2.说明 (1)在AOV网中,若不存在回路,则所有活动可排成一个线性序列,使得每个活动的所有前驱活动都排在该活动的前面,那么该序列为拓扑序列. (2)拓扑序列不是唯一的. (3) 对AOV网不一定都有拓扑序列. 从前驱和后继的传递性和反自反性来看,AOV网中不能出现有向回路(或称有向环)。在AOV网中如果出现了有向环,则意味着某项活动应以自己作为先决条件,这是不对的,工程将无法进行。对程序流程而言,将出现死循环。 因此,对给定的AOV网,应先判断它是否存在有向环。判断AOV网是否有有向环的方法是对该AOV网进行拓扑排序,将AOV网中顶点排列成一个线性有序序列,若该线性序列中包含AOV网全部顶点,则AOV网无环,否则,AOV网中存在有向环,该网所代表的工程是不可行的。 (4)拓扑序列的实际意义是: 如果按照拓扑序列中的顶点次序进行每一项活动,就能够保证在开始每一项活动时,他的所有前驱活动均已完成,从而使整个工程顺序执行. 拓扑排序方法: (1)在AOV网中选一个入度为0的顶点(没有前驱)且输出之; (2)从AOV网中删除此顶点及该顶点发出来的所有有向边; (3)重复(1)、(2)两步,直到AOV网中所有顶点都被输出或网中不存在入度为0的顶点。 从拓扑排序步骤可知,若在第3步中,网中所有顶点都被输出,则表明网中无有向环,拓扑排序成功。若仅输出部分顶点,网中已不存在入度为0的顶点,则表明网中有有向环,拓扑排序不成功。 例 课程代号 课程名称 先修棵 C1 C2 C3 C4 C5 C6 C7 C8 C9 C10 C11 C12 无 C1 C1,C2 C1 C3,C4 C11 C3.C5 C3,C6 无 C9 C9 C1,C9,C10 程序设计基础 离散数学 数据结构 汇编语言 语言的设计和分析 计算机原理 编译原理 操作系统 高等数学 线性代数 普通物理 数值分析 C1 C2 C3 C4 C5 C6 C7 C8 C9 C10 C11 C12 C1 C2 C3 C4 C5 C6 C7 C8 C9 C10 C11 C12 拓扑序列:C1--C2--C3--C4--C5--C7--C9--C10--C11--C6--C12--C8 或 :C9--C10--C11--C6--C1--C12--C4--C2--C3--C5--C7--C8 一个AOV网的拓扑序列不是唯一的 C1 C2 C3 C4 C5 C6 C7 C8 C9 C10 C11 C12 C2 C3 C4 C5 C6 C7 C8 C9 C10 C11 C1

文档评论(0)

yan698698 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档