数据结构摘要.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数 据 结 构 —— 第7章 图 目 标 理解图的基本概念及术语; 掌握图的两种存储结构(邻接矩阵和邻接表); 熟练掌握图的两种遍历的算法思想、步骤; 掌握按Prim和Kruskal算法构造最小生成树的步骤; 领会并掌握求拓扑排序、关键路径、最短路径的过程。 本章内容 7.6 最短路径 7.6.1 从一个源点到其它各点的最短路径 7.6.2 每一对顶点之间的最短路径 7.6.1 从一个源点到其它各点的最短路径 最短路径问题是图的一个比较典型的应用问题。 在非网图中,最短路径是指两点之间经历的边数最少的路径。 求源点到其余各顶点间最短路径的方法: Dijkstra算法 7.6.1 从一个源点到其它各点的最短路径 Dijkstra算法的基本思想 设G=(V,E)是一个有向带权图,把图中的顶点集合V分成两组,第一组为已求出最短路径的顶点集合(用S表示),第二组为其余未确定最短路径的顶点集合(用U表示),按最短路径长度的递增次序依次把第二组的顶点加入到S中。 在加入过程中,总保持从源点v到S中各顶点的最短路径长度不大于从源点v到U中任何顶点的最短路径长度。 7.6.1 从一个源点到其它各点的最短路径 Dijkstra算法 例: 7.6.1 从一个源点到其它各点的最短路径 实现算法(自己看) 7.6 最短路径 7.6.1 从一个源点到其它各点的最短路径 7.6.2 每一对顶点之间的最短路径 7.6.2 每一对顶点之间的最短路径 求每一对顶点间的最短路径,可以通过重复调用Dijkstra算法完成。 求每一对顶点间最短路径的方法: Floyd算法 7.6.2 每一对顶点之间的最短路径 Floyd算法基本思想 求顶点vi到顶点vj的最短路径的过程: (1)若存在vi,vj,则存在长度为arcs[i][j]的路径,但此路径不一定是最短路径,需要进行n次试探; (2)加顶点v1,若存在(vi,v1,vj)路径,则比较它与(vi,vj)的大小,取路径短者; (3)继续试探,将所有的顶点依次加到路径中,取路径长度小的,最终得到的就是所有顶点间的最短路径。 7.6.2 每一对顶点之间的最短路径 Floyd算法基本思想 例: P191 图7.36 小 结 掌握利用Dijkstra算法求源点到其余各顶点间最短路径的方法。 理解Dijkstra算法的实现算法。 理解利用Floyd算法求每一对顶点间最短路径的方法。 总 结 本章重点 理解图的定义、术语及其含义; 掌握图的邻接矩阵和邻接表表示法、其类型说明及创建图的算法; 掌握图的深度优先和广度优先遍历方法和算法; 掌握求最小生成树的方法(Prim、Kruskal算法) 掌握求最短路径、拓扑序列和关键路径的方法; 北华航天工业学院计算机系 制作 * 7.1 图的定义和术语 7.2 图的存储结构 7.3 图的遍历 7.4 图的连通性问题 7.5 有向无环图及其应用 7.6 最短路径 北华航天工业学院计算机系 制作

文档评论(0)

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

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

1亿VIP精品文档

相关文档