- 1、本文档共14页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第21讲最短路径与图的小结
数 据 结 构
主讲:信息工程大学电子技术学院
402教研室;第7章 图
7.1 图的定义和术语
7.2 图的存储结构
7.3 图的遍历
7.4 图的连通性问题
7.5 有向无环图及其应用
7.6 最短路径;7.6 最短路径 ;7.6.1 单源点最短路径;如何在计算机中求得最短路径?; Dijkstra提出了一个按路径“长度”递增的次序,逐步得到由给定源点到图的其余各点间的最短路径的算法:
假设我们以邻接矩阵cost表示所研究的有向网。
迪杰斯特拉算法需要一个顶点集合,初始时集合内只有一个源点V0 ,以后陆续将已求得最短路径的顶点加入到集合中,到全部顶点都进入集合了,过程就结束了。集合可用一维数组来表示,设此数组为S,凡在集合S以外的顶点,其相应的数组元素S[i] 为 0 ,否则为 1 。;另需一个一维数组D,每个顶点对应数组的一个单元,记录从源点到其他各顶点当前的最短路径长度,其初值为D[i]=cost[V0][i],i=1…n。数组D中的数据随着算法的逐步进行要不断地修改
定义了S集合和D数组并对其初始化后,迪杰斯特拉算法在进行中,都是从S之外的顶点集合中选出一个顶点w,使D[w]的值最小。于是从源点到达w只通过S中的顶点,把 w 加入集合S中,并调整D中记录的从源点到集合中每个顶点v的距离:
取D[v]和D[w]+cost[w][v]中值较小的作为新的D[v]
重复上述,直到S中包含V中其余各顶点的最短路径。; V0 V1 V2 V3 V4 V5
V0 ∞ ∞ 10 ∞ 30 100
V1 ∞ ∞ 5 ∞ ∞ ∞
V2 ∞ ∞ ∞ 50 ∞ ∞
V3 ∞ ∞ ∞ ∞ ∞ 10
V4 ∞ ∞ ∞ 20 ∞ 60
V5 ∞ ∞ ∞ ∞ ∞ ∞ ;7.6 最短路径 ;问题描述:???? 已知一个各边权值均大于 0 的带权有向图,对每对顶点 vi≠vj,要求求出每一对顶点之间的最短路径和最短路径长度。
解决方案:
1. 每次以一个顶点为源点,重复执行迪杰斯特拉算法n次。这样,便可求得每一对顶点之间的最短路径。总的执行时间为O(n3)。
2. 形式更直接的弗洛伊德(Floyd)算法。时间复杂度也为O(n3)。;弗洛伊德算法思想:
假设求从顶点Vi到Vj的最短路径。如果从Vi到Vj有弧,则从Vi到Vj存在一条长度为arcs[i][j]的路径,该路径不一定是最短路径,尚需进???n次试探。
首先考虑路径(Vi,V0,Vj)是否存在(即判别(Vi,V0)、(V0,Vj)是否存在)。如存在,则比较(Vi,Vj)和(Vi,V0,Vj)的路径长度,取长度较短者为从 Vi到Vj 的中间顶点的序号不大于0 的最短路径。假如在路径上再增加一个顶点 V1,…依次类推。可同时求得各对顶点间的最短路径。;定义一个n阶方阵序列
D(-1),D(0),D(1),D(2),…,D(k),…,D(n-1)
其中:
D(-1)[i][j]= arcs[i][j]
D(k)[i][j]=Min { D(k-1)[i][j], D(k-1)[i][k]+ D(k-1)[k][j] }
0≤k≤n-1
可见,D(1)[i][j]就是从vi到vj的中间顶点的序号不大于1的
最短路径的长度;
D(k)[i][j]就是从vi到vj的中间顶点的序号不大于k的
最短路径的长度;
D(n-1)[i][j]就是从vi到vj的最短路径的长度。; 各顶点间的最短路径及其路径长度 ;本章小结
1.熟练图的各种存储结构及构造算法,了解实际问题的求解效率与采用何种存储结构和算法有密切联系。
2.熟练掌握图的两种搜索路径的遍历及算法。
3.掌握以下内容:
图的最小生成树和求最小生成树算法的思想;
利用AOV网络的拓扑排序问题;
利用AOE网络的关键路径法;
带权有向图的最短路径问题。
您可能关注的文档
- 笔画横折折撇:竖折撇[修改].ppt
- 第05章函数函数与运算符的重载.ppt
- 第04讲——烃的衍生物命名[续].ppt
- 第02讲——系统命名基本规则和开链烃的命名.ppt
- 第05章原始素材的捕获.ppt
- 第05章半导体存储器.ppt
- 第05章数组和广义表-副本.ppt
- 第06章数组、指针与字符串.ppt
- 窝窝商城招商文档V2.0.pptx
- 第02章静电场分析[图片版].ppt
- 某区纪委书记年度民主生活会“四个带头”个人对照检查材料.docx
- 某县纪委监委2024年工作总结及2025年工作计划.docx
- 某市场监督管理局2024年第四季度意识形态领域风险分析研判报告.docx
- 县委书记履行全面从严治党“第一责任人”职责情况汇报.docx
- 税务局党委书记2024年抓党建工作述职报告.docx
- 某市税务局副局长202X年第一季度“一岗双责”履行情况报告.docx
- 副县长在全县元旦春节前后安全生产和消防安全工作部署会议上的讲话.docx
- 某市委书记个人述职报告.docx
- 某县长在县委常委班子年度民主生活会个人对照检查材料1.docx
- 某县长在县委常委班子年度民主生活会个人对照检查材料.docx
文档评论(0)