第七章图图的应用.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第7章 图 7.5 图的应用(有向图) 三、 求网络的最短路径 单源最短路径 (Dijkstra算法) 第7章小结 上机实验3:教学计划编制问题 * 7.1 基本术语 7.2 存储结构 7.3 图的遍历 7.4 图的连通性 7.5 图的应用 ① AOV网(Activity On Vertices) —用顶点表示活动的网络 AOV网定义:若用有向图表示一个工程,在图中用顶点表示活动,用弧表示活动间的优先关系。Vi 必须先于活动Vj 进行。则这样的有向图叫做用顶点表示活动的网络,简称 AOV。 ② AOE网(Activity On Edges) —用边表示活动的网络 AOE网定义:在带权有向无环网中, 用有向边表示一个工程中的活动,用边上权值表示活动持续时间,用顶点表示事件,则这样的有向图叫做用边表示活动的网络,简称 AOE。 有两种常用的活动网络( Activity Network): 拓扑排序 问题: 假设以有向图表示一个工程的施工图或程序的数据流图,则图中不允许出现回路。 检查有向图中是否存在回路的方法之一,是对有向图进行拓扑排序。 一、AOV网(Activity On Vertices) 何谓“拓扑排序”? 对有向图进行如下操作: 按照有向图给出的次序关系,将图中顶点排成一个线性序列,对于有向图中没有限定次序关系的顶点,则可以人为加上任意的次序关系。由此所得顶点的线性序列称之为拓扑有序序列。 例:对于下列有向图: B D A C 可求得拓扑有序序列: A B C D 或 A C B D B D A C 反之,对于下列有向图: 不能求得它的拓扑有序序列。 因为图中存在一个回路 {B, C, D} 如何进行拓扑排序? (1)从有向图中选取一个没有前驱的顶点,并输出之; (3)重复上述两步,直至图空,或者图不空但找不到无前驱的顶点为止。 (2)从有向图中删去此顶点以及所有以它为尾的弧; 没有前驱的顶点 ?? 入度为零的顶点 删除顶点及以它为尾的弧 ?? 弧头顶点的入度减1 举例:计算机专业的学生应该学习的部分课程及其每门课程所需要的先修课程。 可求得拓扑有序序列:c1,c8,c9,c2,c3,c4,c5,c6,c7 问题: 假设以有向网表示一个施工流图,弧上的权值表示完成该项子工程所需时间。即弧表示活动 (1)完成整项工程至少需要多少时间? (2)哪些子工程项是“关键工程”?即:哪些子工程项将影响整个工程的完成期限。 二、AOE网(Activity On Edges) 整个工程完成的时间为:从有向图的源点到汇点的最长路径。 关键路径: 关键活动: 路径长度最长的路径。 最早开始时间和最迟开始时间相等的活动。 如何求关键活动? 假设第 i 条弧为 j, k 则“活动(弧)”的最早开始时间 ee(i)= ve(j); “活动(弧)”的最迟开始时间 el(i)= vl(k) – dut(j,k); 事件发生时间的计算公式:事件j的最早发生时间ve(j),最迟发生时间vl(j)。 ve(源点) = 0; ve(j) = Max{ve(i) + dut(i,j)} vl(汇点) = ve(汇点); vl(j) = Min{vl(k) – dut(j, k)} a b c d e f g h k 6 4 5 2 1 1 8 7 2 4 4 0 6 4 5 7 7 15 14 18 18 16 14 6 6 10 8 0 7 例: (1)列出关键路径; (2)完成整个工程至少需要多少时间? (3)事件h 的最早完成时间是多少? (4)活动 e,g的最迟开工时间是多少? 0 6 4 5 7 7 15 14 18 18 14 16 10 7 8 6 6 0 0 0 0 6 4 5 7 7 7 15 14 14 16 0 2 3 6 6 8 8 7 10 (1)列出所有的关键路径; (2)完成整个工程至少需要多少时间? (3)事件V5 的最早完成时间是多少? (4)活动 a6 的最早开工时间是多少? a2=10 练习:对于下面的AOE网络,试回答下列问题: 一顶点到其余各顶点 两种常见的最短路径问题: 单源最短路径—用Dijkstra(迪杰斯特拉)算法 所有顶点间的最短路径—用Floyd(弗洛伊德)算法 典型用途:交通问题。如:城市A到城市B有多条线路,但每条线路的交通费用(或所需时间)不同,那么,如何选择一条线路,使总费用(或总时间)最少? 问题抽象:在带权有向图中A点(源点)到达B点(终点)的多条路径中,寻找一条各边权值之和最小的路径,

您可能关注的文档

文档评论(0)

精品课件 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档