课件教案数据结构严蔚敏第6章-图(完整版).pptVIP

课件教案数据结构严蔚敏第6章-图(完整版).ppt

  1. 1、本文档共126页,可阅读全部内容。
  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文档。上传文档
查看更多
实例:求事件结点的最早发生时间 5、 V1 V2 V3 V4 V5 V6 正向拓扑排序: 利用拓扑排序算法求事件结点的最早发生时间的执行步骤: 1、设每个结点的最早发生时间为0,将入度为零的结点进栈。 2、将栈中入度为零的结点V取出,并压入另一栈,用于形成逆向拓扑排序的序列。。 3、根据邻接表找到结点V的所有的邻接结点,将结点V的最早发生时间 + 活动的权值 得到的和同邻接结点的原最早发生时间进行比较;如果该值大,则用该值取代原最早发生时间。另外,将这些邻接结点的入度减一。如果某一结点的入度变为零,则进栈。 4、反复执行 2、3;直至栈空为止。 V1 V3 V2 V5 V6 V4 1 3 5 1 1 0 2 2 V1 V3 V2 V5 V6 V4 1 3 5 1 1 2 2 1 2 2 2 2 1 1 3、 5、 3、 3 5、 5 6 7、 8 0 0 0 0 0 0 V1 V3 V2 V5 V6 V4 1 3 5 1 1 0 2 2 V1 V3 V2 V5 V6 V4 1 3 5 1 1 2 2 1 2 2 2 2 1 1 3、 5、 3、 3 5、 5 6 7、 8 V1 V2 V3 V4 V5 V6 正向拓扑排序: 0 0 0 0 0 0 Status Topologicalsort( ALGraph G, Stack T) { FindinDegree(G,indegree); // 对各顶点求入度,建立入度为零的栈 S, Initstack(T);count = 0; ve [ 0 .. G.vexnum - 1 ] = 0; while (!StackEmpty(S)) { Pop(S,j);Push(T,j); ++count; for (p=G.vertices[i]. firstarc; p; p=p-nextarc); { k = p-adjnexr; if (!(- - indegree [ k ])) Push(S, k); if (ve[ j ]+ *( p-info) ve[ k ] ) ve[ k ] = ve[ j ] + *( p-info); } } } if (count G.vexnum)return ERROR; else return OK; } // 栈 T 为求事件的最迟发生时间的时候用。 V1 V3 V2 V5 V6 V4 1 3 5 1 1 2 2 2 2 1 6、 5 6 8 V1 V2 V3 V4 V5 V6 逆向拓扑排序: 利用逆向拓扑排序算法求事件结点的最迟发生时间的执行步骤: 1、设每个结点的最迟发生时间为收点的最早发生时间。 2、将栈中的结点V取出。 3、根据逆邻接表找到结点V的所有的起始结点,将结点V的最迟发生时间 - 活动的权值得到的差同起始结点的原最迟发生时间进行比较;如果该值小,则用该值取代原最迟发生时间。 4、反复执行 2、3;直至栈空为止。 8 8 8 8 8 8 V1 V3 V2 V5 V6 V4 1 3 5 1 1 2 2 2 2 1 6、 4、 4 0、 0、 0 3 实例:求事件结点的最迟发生时间 V1 V3 V2 V5 V6 V4 实例的事件结点的最迟发生时间 1 3 5 1 1 2 2 2 2 1 3 0 4 5 6 8 V1 V3 V2 V5 V6 V4 实例的事件结点的最早发生时间 1 3 5 1 1 0 2 2 2 2 1 1 3 5 6 8 V1 V2 V1 V3 V1 V4 V2 V3 V3 V4 V3 V6 V4 V5 V4 V6 V5 V6 V2 V5 边 最早发生时间 Ve( j ) 最迟发生时间 V l( k ) - dut( j , k ) 0 0 0 1 1 3 3 5 5 6 2 1 0 3 4 4 6 5 6 6 关键活动 关键活动 关键活动 3 0 4 5 6 8 V1 V3 V2 V5 V6 V4 实例的关键路径(粗大的黑色箭头所示) 1 3 5 1 1 0 2 2 2 2 1 1 3 5 6 8 注意:关键路径可有多条缩短工期必须缩短关键活动所需的时间 6.7 案例分析与实现 【案例分析】 把六度空间理论中的人际关系网络图抽象成一个不带权值的无向图G 用图G中的一个顶点表示一个人,两个人“认识”与否,用代表这两个人的顶点之间是否有一条边来表示。 这样六度空间理论问题便可描述为:在图G中,任意两个顶点之间都存在一条路径长度不超

文档评论(0)

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

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

1亿VIP精品文档

相关文档