网站大量收购独家精品文档,联系QQ:2885784924

最短路径中英文翻译.pdf

  1. 1、本文档共4页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

8.6最短通路问题

8.6.1引言

许多问题可以用边上赋权的图来建模。考虑一下航线系统如何建模。如果用顶点

表示城市,用边表示航线。给边赋上城市之间的距离,就可以为涉及距离的问

题建模;给边赋上飞行时间,就可以为涉及飞行时间的问题建模;给边赋上票价,

就可以为涉及票价的问题建模。图8—61显示了给一个图的边赋权的三种不同

方式,分别表示距离,飞行时间和票价。

波士顿波士顿

第2/19页

黄河科技学院毕业论文(文献翻译)第2页

波士顿

图8-61为航线系统建模的带权图

给每条边赋上一个数的图称为带权图。带权图用来为计算机网络建模。通信成本

(比如租用电话线的月租费)、计算机在这些线路上的响应时间或是计算机之

间的距离等都可以用带权图来研究。图8—62显示一些带权图,它们表示给计算

机的图的边赋权的三种方式,分别对应成本、响应时间和距离。

距离

达拉斯

与带权图有关的几种类型的问题出现得很多。确定网络里两个顶点之间长度最短

的通路就是一个这样的问题。说的更具体些,设带权图里一条通路的长度是这

条通路上各边的权的总和。(读者应当注意,对术语长度的这种用法,与表示不

带权的图的通路里边数的长度的用法,这两者是不同的。)问题是:什么是最

短通路,即什么是在两个给定顶点之间长度最短的通路?例如,在图8—61所示

带权图表示的航线系统里,在波士顿与洛杉矶之间以空中距离计算的最短通路

是什么?在波士顿与洛杉矶之间什么样的航班组合的总飞行时间(即在空中的总

时间,不包括航班之间的时间)最短?在这两个城市之间的最低费用是多少?

第3

黄河科技学院毕业论文(文献翻译)第3页

响应时间

达拉斯

月租费

达拉斯

图8-62为计算机网络建模的带权图

在图8—62所示的计算机网络里,连接旧金山的计算机与纽约的计算机所需要的

最便宜的一组电话线是什么?哪一组电话线给出旧金山与纽约之间的通信的最

短响应时间?哪一组电话线有最短的总距离?

与带权图有关的另外的一个重要问题是:求访问完全图每个顶点恰好一次的、总

长度最短的回路。这就是著名的旅行商问题,它求一位推销商应当以什么样的顺

序来访问其路程上的每个城市恰好一次,使得他旅行的总距离最短。本节后面将

讨论旅行商问题。8.6.2最短通路算法

求带权图里两个顶点之间的最短通路有几个不同的算法。下面将给出荷兰数学家

E·迪克斯特拉在1959年所发现的一个解决无向带权图中最短通路问题的算法,

其中所有的权都是正数。可以很容易地将它修改后来解决有向图里的最短通路问

题。

黄河科技学院毕业论文(文献翻译)第4页

在给出这个算法的形式化表示之前将给出一个启发性的例子。

例1在图8—63所示的带权图里,a和z之间的最短通路的长度是多少?

az图8—63

解虽然通过观察就容易求出最短通路,但是需要想出一些有助于理解迪克施特

拉算法的办法。要解决的问题就是:求从a到各个相继的顶点的最短通路,直到

到达z为止。

从a开始、(直到到达终点为止)不包括除a以外的顶点的唯一通路是a,b和

a,d。因为a,b和a,d的长度分别是4和2,所以d是与a最近的顶点。

可以通过查看(直到到达终点为止)只经过a和d的所有通路,来求出下一个最

靠近a的顶点。到b的最短通路仍然是a,b,长度为4,而到e的最短通路是

a,d,e,长度为5。所以,下一个与a最靠近的顶点是b。

为了找出第三个与a最近的顶点,只需要检查(直到到达终点为止)只经过了

a,d和

存在长度为7到c的通路,即a,b,c,以及长度为6到z的通路,即a,d,e,z。b

的那些通路。

所以,z是下一个与a最靠近的顶点,而且到z的最短通路的长度为6。

例1说明了在迪克斯特拉算法里使用的一般原理。注意通过检查就可能求出从

a到z最短通路。不过,无论对人还是对计算机来说,检查边数很多的图都是不

切实际的。现在将考虑一般问题:在无向联通简单带权图里,求出a与z之间

的最短通路的长度。迪克斯特拉算法如下进行:求出从a到第一个顶点的最短通

路的长度,从a到第二个顶点最短通路的长度,以此类推,直到求出a到z的

最短通路长度为止。

这个算法依赖于一系列的迭代。通过在每次跌代里添加一个顶点来构造出特殊顶

点的集合。在每次跌代里完成一个标记过程。在这个标记过程,只包括特殊顶点

的从a到w的最短通路的长度来标记w。

添加到特殊顶点集里的顶点是尚在集合之外的那些顶点

第5/19页

文档评论(0)

办公服务吧 + 关注
实名认证
服务提供商

专注于文案的个性定制,修改,润色等。本人已有16年相关工作经验,具有扎实的文案功底,可承接演讲稿,读后感,任务计划书,营销方案等方面的工作。欢迎您的咨询~~

1亿VIP精品文档

相关文档