- 1、本文档共4页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
几种最短路径算法的比较.doc
几种最短路径算法的比较
(陈先红 湖北省仙桃市沔城高级中学)
摘 要:最短路径算法种类繁多,比较有名的算法包括:Dijkstra 算法、Warshall –Floyd算法、动态规划算法、A*算法以及改进的Dijkstra 算法,而即使同一种算法也有多种不同的实现方式。本文主要这几种经典的算法进行分析比较。
关键词:最短路径 算法 邻接矩阵
1. 引言, 寻找从指定起点到终点的一条具有最小权值总和的路径问题。如果把权值看成是道路的长度属性, 那么目标路径就是从起点到终点的最短路径。所谓最短路径就是网络中两点之间距离最短的路径,这里讲的距离可以是实际的距离,最短路径不仅仅指一般地理意义上的距离最短,也可以引申为其它的度量,如时间、运费、流量等。
2. Dijkstra算法,目标点为。Dijkstra算法由近到远为顺序,依次求得到G的各顶点的最短路和距离,直至,算法结束。为避免重复并保留每一步的计算信息,采用了标号算法。
算法步骤如下:
步骤1:令=0,对于,令,,。
步骤2:对每个,用代替,
当不相邻时,。计算,把达到这个最小值的一个顶点记为,令。
步骤3:若,则停止;若,则代替,转步骤2。
3. Warshall -Floyd算法Dijkstra算法N次。但这里要提的Warshall -Floyd算法算法,顶点到顶点的最短路径经过顶点或者不经过顶点。比较与的值。若,则令,保持是当前有哪些信誉好的足球投注网站的顶点到顶点的最短路径。重复这一过程,最后当有哪些信誉好的足球投注网站完所有顶点时,就是顶点到顶点的最短距离。
Warshall -Floyd算法是顶点到顶点的最短距离,是顶点到顶点的权。Warshall -Floyd算法,有=,。
步骤2 更新。对所有,若,则令。
步骤3 若,则存在一条含有顶点的负回路,停止;或者
停止,否则转步骤2。
4. 动态规划算法
动态规划算法的基本思想是将待求解问题分解成若干个子问题,先求解子问题,然后从这些子问题的解得到原问题的解。动态规划算法使用于解最优化问题。通常可以按以下步骤设计动态规划算法:
(1)找出最优解的性质,并刻画其结构特征;
(2)递归地定义最优解;
(3)以自底向上的方式计算出最优解;
(4)根据计算最优值时得到的信息,构造最优解。
5.A* 算法
A*算法是在宽度优先有哪些信誉好的足球投注网站算法的基础上, 每次都是利用一个自己确定的估价函数对所有没展开的结点进行估价,从而找出最应该被展开的结点(也就是说要找的答案最有可能是从该结点展开,把该结点展开,直到找到目标结点为止)。
A* 算法是人工智能领域的一种图有哪些信誉好的足球投注网站策略, 采用了启发式函数对有哪些信誉好的足球投注网站过程中产生的分支进行评估, 以选择最佳的分支进行有哪些信誉好的足球投注网站。其更一般的引入了一个估价函数f(n),其定义为f(n)=g(n)+h(n)。 其中g(n)为到达当前节点的耗费, 而h(n)表示对从当前节点到达目标节点的耗费的估计, 其必须满足两个条件:
(1) h(n)必须小于等于实际的从当前节点到达目标节点的最小耗费h*。
(2) f(n)必须保持单调递增。
A* 算法生成的总节点数为N ,解的深度为d ,尝试为d 的一致有哪些信誉好的足球投注网站树为了包括N + 1 个节点所必须的分支因子为b* 。因此, ,可以看出空间复杂度高。如果是可采纳的,即启发函数设计得好, 可以大大降低扩展的节点,从而在较小的时间内即可完成最佳路径有哪些信誉好的足球投注网站。其时间复杂度为。
6.改进的Dijkstra 算法
传统的利用Dijkstra 算法来实现图中任意结点之间的最短路径查找,其基本思想就是依次以图中各个结点为起点利用Dijkstra 算法计算出最短路径,这样循环n 次即可得到图中任意结点之间的最短路径,而每一步都是一个简单的重复过程。这样虽然能够实现任意两点之间的最短路径查找,但是从效率上分析并不是最优的。实际是可以进行改进,具体方法如下:
(1) 根据Dijkstra 算法思想,可以由图中结点的出入度信息来提高各点之间最短路径的查找速度。
(2) 在带权图中利用Dijkstra 算法找出部分结点之间的最短路径后,若其他还没有找出最短路径的结点可以利用前面已找出的最短路径信息为自己提供快速的最短路径查找。
7.最短路径算法的分析比较
求解同一计算问题可能有许多不同的算法,究竟如何来评价这些算法的好坏,主要考虑两点:
(1)执行算法所耗费的时间;
(2)执行算法所耗费的存储空间。
7.1 Dijkstra 算法的成功率是最高的,因为它每次必能有哪些信誉好的足球投注网站到最优路径。但另一方面, Dijkstra 算法的有哪些信誉好的足球投注网站速度是最慢的。Dijkstra 算法求一个点到其他所有点的最短路径时间复杂度为,求一个点到其他所有点最短路径等效于求一个点到另一个点的最短路径n 个点之间互相的最短路径空间复杂度为。
7.2 Warshall -Floyd算法基于图论的
您可能关注的文档
最近下载
- XGZ系列刮板输送机图册.pdf
- 第10课《 再塑生命的人》课件(共22张ppt)部编版语文七年级上册.pptx VIP
- 近5年上海市高考语文真题之书序、游记类文言文阅读汇编.docx VIP
- 00708装饰材料与构造-全国自考-2021年4月高等教育自学考试真题(试卷).pdf VIP
- XGZ系列铸石刮板输送机.doc
- 小学篮球原地运球、行进间运球教案.doc
- 中国林业研究院806有机化学考研真题试题2020年.pdf VIP
- 中国林业研究院806有机化学2019考研真题试题.pdf VIP
- 2024年初级咖啡师技能鉴定考试题库大全-上(单选题汇总).docx
- 2024-2030年中国氦(液氦和气态氦)行业市场发展趋势与前景展望战略分析报告.docx
文档评论(0)