網络的最短路径算法研究.docVIP

  1. 1、本文档共21页,可阅读全部内容。
  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文档。上传文档
查看更多
網络的最短路径算法研究

题 目 网络的最短路径算法研究 学 院 数学与信息工程学院 专 业 班 级 学 号 学生姓名 指导教师 完成日期 摘 要 在现实生活中最短路径的运用非常多,算法也很多,最短路径分析是网络分析最基本的功能之一。近年来,随着网络的不断发展,网络中的最短路径问题具有重要的理论意义和应用价值。当网络规模很大时,求解更加复杂,计算时间和所需的存储空间也大大的增加。本文讨论网络的最短路径算法及其现实问题,其中典型的最短路径算法是Dijkstra算法。Dijkstra算法是一种著名的最短路径算法, 它可为任一源节点找出与其它所有节点的最短路径。Dijkstra 算法是目前公认的较好的最短路径算法,是计算机科学与地理信息科学等领域研究的热点。Dijkstra算法将网络结点分为未标记结点、临时标记结点和永久标记结点,网络中所有结点先初始化为未标记结点,在搜索过程中和最短路径结点相连通的结点为临时标记结点,每次循环都是从临时标记结点中搜索距源点路径长度最短的结点作为永久标记结点,直至找到目标结点或所有结点都成为永久标记结点才结束,这样临时结点无序地存储在无序表中,每次搜索都要遍历到表中的所有临时结点,这样势必会带来很大的计算量,给系统的应用也会带来很大不便.提高算法的效率一方面可以通过对临时结点表建立索引,加快检索速度;另一方面即减少搜索的临时结点的数量,那么效率就可以大幅度的提高。在寻径时要分步由源节点开始一步步地向相邻节点扩展, 直到包含所有网络节点为止。针对如何利用Dijkstra算法来高效地查找图中任意两点之间的最短路径这一问题,应用图中各结点的出入度来简化查找两结点之间的最短路径,再利用以求出的两点之间的最短路径快速获得结点之间的最大路径。主要特点是以起始点为中心向外层扩展,直到扩展到终点为止。通过对Dijkstra算法的了解,能得出最短路径的最优解,但由于它遍历计算的节点很多,所以效率低。本文接着简单介绍了Floyd算法,又称弗洛伊德算法,插点法,是一种用于寻找给定的加权图中顶点间最短路径的算法。是一种动态规划算法,稠密图效果最佳,边权可正可负,此算法简单有效,容易理解,可以算出任意两个节点之间的最短距离,代码编写简单。然后运用Matlab来实现了这两种经典的算法。最后将两种算法进行了一些对比,得出结论:Dijkstra算法可为任一源节点找出与其它所有节点的最短路径,当网络问题规模增大时,Dijkstra算法会使计算时间复杂度不断增大。而Floyd算法是一种动态算法,此算法简单,容易理解,可以算出任意两个节点之间的最短距离,但是Floyd算法计算最短路径时时间复杂比较高,不适合计算大量数据。 关键词 最短路径;Dijkstra算法;Floyd算法;Matlab Abstract The shortest path in real life use of very large, algorithms are also many, the shortest path analysis is the most basic functions of the network analysis.In recent years, as the network continues to develop, the shortest path network has important theoretical significance and application value.When the network size is large, solving the more complex, computation time and required storage space is greatly increased.This article discusses the networks shortest path algorithm and its practical problems, which the typical shortest path algorithm is Dijkstra algorithm.Dijkstra algorithm is a well-known shortest path algorithm, it can be any source node to all other nodes to find the shortest path. Dijkstra algorithm is better recognized as the shortest path algorithm, a

文档评论(0)

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

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

1亿VIP精品文档

相关文档