纠纷奇闻社交美文家庭
投稿投诉
家庭城市
爱好生活
创业男女
能力餐饮
美文职业
心理周易
母婴奇趣
两性技能
社交传统
新闻范文
工作个人
思考社会
作文职场
家居中考
兴趣安全
解密魅力
奇闻笑话
写作笔记
阅读企业
饮食时事
纠纷案例
初中历史
说说童话
乐趣治疗

导航软件如何规划ampampquot最短路线ampampqu

6月22日 断龙塔投稿
  程序员视角科普生活知识
  hello大家好
  我是浩说
  关于最短路线这个问题
  我们生活中有一个典型应用:
  使用导航软件帮我们规划从出发地到目的地的最短路线
  今天我们就来研究一下:导航软件如何计算最短路线
  抽象
  首先我们需要将导航软件中的地图抽象成一种数据结构:图
  关于图的介绍,我用一张图片做简单说明
  图的更多详细内容兄弟们可以过一下我之前的文章
  于是我们可以这样对应:
  顶点地图上的路口
  边两个路口间的道路
  入度和出度道路的方向
  边的权重两个路口间的距离
  按照上面的思路我们抽象成图就是这样的:
  数据结构是为算法服务的,我们将地图抽象成数据结构图之后,
  下一步就是在该数据结构上设计出一种算法来计算出最短路线。
  点个赞,证明你还爱我
  算法
  针对求最短路径的场景,有一种经典的算法叫做:
  Dijkstra算法由荷兰计算机科学家EdsgerWybeDijkstra在1956年发现
  这也就是我们本篇的重点了,
  算法问题很难用一两句话解释清楚,所以接下来我将分步骤拆解应用Dijkstra算法计算最短路径的过程,
  大家需要从过程中感受和体会Dijkstra算法的思路和原理。
  先将图中每个顶点用编号表示,目标就是计算顶点1到8的最短距离
  接着我们准备两个数组:
  一个数组存放图中除起点以外的所有顶点V{2,3,4,5,6,7,8}
  另一个数组先存放起点S{1}
  我们以起点1为原点,逐步统计其它顶点到原点的距离,无法直接到达的顶点距离用表示
  1hr统计结果如下:
  dist12:270
  dist13:300
  dist14:
  dist15:200
  dist16:
  dist17:
  dist18:
  然后通过比较上面的结果选择最小的值,也就是dist15,至此Dijkstra算法会暂时认定:
  顶点1到5的最短距离为200。
  此时将顶点5从数组V中移除,并添加至数组S:
  V{2,3,4,6,7,8}
  S{1,5}
  所以数组S中的顶点其实就是表示已经找到从原点到对应顶点的最短距离的顶点集。
  经过此步骤后,Dijkstra算法暂时认定找到了从原点1至顶点5的最短路径,我们用绿色表做标记。
  2hr该步骤与上一步逻辑相同,但区别在于:
  由于我们找到了到达顶点5的最短路径,所以之前无法到达的顶点(4、6),在该步骤就可以通过顶点5间接的到达了
  于是再次统计距离
  dist12:270
  dist13:300
  dist1415(200)54(260):460
  dist15:200
  dist1615(200)56(310):510
  dist17:
  dist18:
  除去已经被加入到数组S中的顶点,我们依然从剩下的距离中选出最短的,然后将该顶点从数组V移除并加入数组S
  V{3,4,6,7,8}
  S{1,5,2}
  看到这里相信大家已经对Dijkstra算法的逻辑有点感觉了,我们不妨简单梳理一下:
  Dijkstra算法需要准备两个数组,一个存放从起点至终点涉及到的所有顶点,另一个存放已经确定最短路径的顶点,
  然后从原点开始,循环查找至下一顶点距离最短的顶点并将其从V移除然后添加至S中,直至V中顶点全部添加至S中。
  当然,这其中还有一些细节需要注意,我们继续往下看。
  3hr细节来了,注意看这里的顶点4,由于前两步我们打通了顶点2、5的最短距离,因此到达顶点4的路径有两条:
  dist14
  15(200)54(260):460
  12(270)24(210):480
  而此时Dijkstra算法将取距离小的作为最终结果。
  最终统计的距离
  dist12:270
  dist13:300
  dist1415(200)54(260):460
  dist15:200
  dist1615(200)56(310):510
  dist17:
  dist18:
  距离最短的顶点为3:
  V{4,6,7,8}
  S{1,5,2,3}
  4hr这一步顶点6和上一步顶点4出现了一样的情况,
  由于我们打通了顶点3,所以到达顶点6的路径变成了两条
  dist16
  15(200)56(310):510
  13(300)36(180):480
  依然选择距离短的作为最终结果。
  dist12:270
  dist13:300
  dist1415(200)54(260):460
  dist15:200
  dist1613(300)36(180):480
  dist17:
  dist18:
  顶点4加入S:
  V{6,7,8}
  S{1,5,2,3,4}
  看到这一步相信大家对Dijkstra算法的逻辑和一些细节已经有了大体的感受,后面的步骤就很好理解了,我们继续往下看。
  5hrdist12:270
  dist13:300
  dist1415(200)54(260):460
  dist15:200
  dist1613(300)36(180):480
  dist1714(460)47(130):590
  dist18:
  顶点6加入S:
  V{7,8}
  S{1,5,2,3,4,6}
  6hrdist12:270
  dist13:300
  dist1415(200)54(260):460
  dist15:200
  dist1613(300)36(180):480
  dist17:14(460)47(130):590
  dist18:16(480)68(100):580
  V{7}
  S{1,5,2,3,4,6,8}
  7hrdist12:270
  dist13:300
  dist1415(200)54(260):460
  dist15:200
  dist1613(300)36(180):480
  dist17:14(460)47(130):590
  dist18:16(480)68(100):580
  V{}
  S{1,5,2,3,4,6,8,7}
  到这一步数组V已经为空,Dijkstra算法就到此结束了。
  兄弟们可能会有疑问,因为在下图中,由顶点7至顶点8这条路线并没有做判断,难道是Dijkstra算法有问题吗?
  我们回看一下刚才距离的计算结果
  dist17:14(460)47(130):590
  dist18:16(480)68(100):580
  既然dist17已经大于dist18,
  那么dist17dist78必然是会大于dist18的,所以这是符合逻辑的,无需再判断了。
  到这里Dijkstra算法就成功的帮我们规划出了最短路线:
  dist1813(300)36(180)68(100):580
  听说好看的人都点赞分享了哦!
投诉 评论

联通卷王卡29元包103G通用流量100分钟通话(免费送)联通卷王卡29元包103G通用流量100分钟通话(免费送)1江苏随机2京东顺丰快递3快递员激活4首充50元5原月租29元包3G通用100分钟通话,激活首冲50后24小时内叠加1……导航软件如何规划ampampquot最短路线ampampqu程序员视角科普生活知识hello大家好我是浩说关于最短路线这个问题我们生活中有一个典型应用:使用导航软件帮我们规划从出发地到目的地的最短路线……人类快灭亡了吗网曝2023年人类灭绝怎么回事人类快灭亡了吗?明显假的、谣言,完全不可能发生的事情,也不会。但,据说2023年人类将灭绝,而真相是,2023年人类是不会灭绝的,还是正常生活就好了,不要想着这些谣言。1人类快……十大官场小说排名豆瓣,评高又畅销的官场小说自《人民的名义》这部电视剧之后,连带这一系列的官场小说也开始涌现了大量的追捧粉丝。与此同时也有一些官场小说时至今日还依然深受大家的欢迎,下面十大官场小说排名豆瓣高分评价,且又畅……30本快穿文大合集,2022年不可错过的快穿小说快穿文是很多书迷喜欢的一类小说系列,快穿文是由穿越小说延伸出来兴起的文学体裁,非常的受欢迎,下面小薇女性小编综合整理了30本快穿文,2022年不可错过的快穿文30本小说推荐,来……官场小说十大巅峰作品(官场小说十大排排名)官场生活是很多人关注的话题,而官场小说也是非常受欢迎的,今天就给大家整了官场小说十大巅峰作品,感兴趣的不可错过了,本本能吸引你的眼球。1官场小说十大巅峰作品1、公务员笔记……尸变真的存在吗(民间迷信说法,实际化学反应)1、尸变真的存在吗说法1:当然是真的不可能有尸变,有也只是电影环节中的尸变,只是一种化学反应。2、尸变真的存在吗说法2:尸变不是真的存在,尸变是一种迷信说法,在我国历代资……海底捞吃出烟头经过及后续结果如何了?近日,一位消费者来到海底捞用餐,不过在吃的过程中却吃出烟头,这到底是怎么回事呢?不但如词,在此消费者吃出烟头后,海底捞却先报警说陆先生在店里太吵,下面相关经过及后续结果一起来了……10皮肤汇总,星穹之声不足8分,他才是性价比之王?在刚刚过去的10月份中,王者一共上线了5款高质量皮肤,几乎囊括了各个位置,并且颜值风格都各不相同,那么我们今天就一起来对比一下,这些皮肤的手感和颜值已经性价比究竟怎么样!……海底捞大学生优惠什么情况海底捞将取消大学生优惠政策是真的吗近日,有消息称海底捞将取消大学生优惠活动,以前下午场的6。9折的活动将要升级到7。5折,这种改变让很多人有点接受不了。但海底捞方并没有回应,海底捞将取消大学生优惠政策是真的吗?……海底捞播不雅画面什么情况这画面让服务员都憋笑海底捞播不雅画面什么情况?具体什么样的不雅画面?那么,海底捞怎么会突然出现不雅画面呢?据悉,5日下午,有网友发布微博称,刚刚在江汉路某商场海底捞火锅店用餐时,店里的电视屏幕突然……海底捞厕所偷拍事件具体偷拍详情男员工该如何处理海底捞厕所偷拍事件:陕西女子海底捞吃火锅,上厕所被男员工偷拍,发现后男子大哭狂抽自己。近日,咸阳市的南女士和几个亲朋好友去海底捞吃火锅。没有想到,一向以用餐体验愉快的海底捞,竟……
糖尿病早上起来有这3种情况请抓紧看医生小便有泡沫出现尿泡沫的问题可大可小,比较轻的,可能是尿道或者肾脏内有一些炎性反应导致的;严重的,就有可能是出现了肾脏方面的损伤。因为长时间的血糖高会导致肾小球毛细血……和北斗七星之一同名的天枢穴,能调理脾胃肠道,是强力的补虚之穴好医生为健康护航《晋书天文志》有言北斗七星在太微北,枢为天,璇为地,玑为人,权为时,衡为音,开阳为律,瑶光为星。其中的首星就是天枢星又称贪狼星、小天罡星。它是一颗力量之星……史无前例!美法合作监测地表大部分水体,猎鹰九号送SWOT去观北京时间2022年12月16日19:46,搭载地表水和海洋地形(SWOT)地球观测卫星的猎鹰九号运载火箭,从加利福尼亚州范登堡太空军基地SLC4E(SpaceLaunchCom……朴信惠待产老公陪度蜜月,穿休闲宽松服难掩大肚,网友嫁给爱情要说现在90后明星年纪也不小了,都已经奔三了。而现在的明星相比之前来说还是比较看得开的,遇到自己喜欢的人就结婚生孩子。朴信惠也是如此,和自己的男朋友谈了三四年恋爱,觉得合适差不……CBA三热点王泉泽打夏联,巴斯重返CBA,西热邀请李根1、有消息称广州队签约球员王泉泽将打NBA夏季联赛,据悉广州队早两年就有意召回王泉泽回国打联赛,但是王泉泽一直以学业为由留在美国打球,虽然因为疫情和个人伤病问题,他这两年也没有……发现鹰城名胜古迹篇小峨眉下眠三苏大江东去永传颂2023年3月28日《平顶山晚报》2版游客在东坡碑林拍照三苏父子雕像平报融媒记者孙书贤文图一门三学士如天如日如月,四海五大家无左无右无前。900多年来,……先用沐浴露还是先搓灰洗澡应该先搓灰再用沐浴露。使用沐浴露之后,身上会变得滑滑的,这时候使用搓澡巾就搓不出灰,所以正确的清洗方式是先搓灰再使用沐浴露,这样不仅可以有效的去除身上的角质,还能让清洗后的……55岁温碧霞出席活动状态极好,穿粉色蓬蓬裙搭配公主辫,笑容明近日,温碧霞出席香港某活动,穿着露肩粉色蓬蓬裙,大方展现自己的锁骨和颈部线条,头发扎成公主辫,留着空气刘海,脸部化着精致的装容,粉嫩嫩的腮红和口红尽显年轻姿态,佩戴了亮晶晶的耳……明明实力很强,演技却起伏不定,他们演砸的角色,一个比一个离谱演技是评价演员的基本标准,可现在的演艺圈,公认的实力派,演技也会忽高忽低、起伏不定。事实上,演技派的口碑比我们想象当中更脆弱。纵然实力高超,也有让人大跌眼镜的作品。……女排首胜不足为喜!龚翔宇突发旧伤成隐患,2点攻弱轮问题还存在万众瞩目的2022年女排世锦赛正式打响!中国女排30战胜小组对手阿根廷女排,取得本届世锦赛开门红。虽说女排获得首胜值得庆贺,但面对世界排名第22位的阿根廷女排,中国女排赢球在意……长安阿维塔11现身,宝马设计师操刀,配华为电机鸿蒙系统诚然,以长安现如今的产品布局和销量水平来看,无疑算是国产燃油车第一梯队的存在。但毕竟现如今的车市大潮,还是以电气化产品为主,而长安在新能源领域市场的建树,显然比不上燃油车领域。……阿尔及利亚洞穴中发现可分解面筋的细菌研究人员在10个阿尔及利亚洞穴从沉积岩中分离出250种细菌菌株并将其分类法国小说家儒勒凡尔纳曾写了他一部著名小说《地心之旅》。当时,有些人并不相信地下存在着丰富的生命。而……
友情链接:中准网聚热点快百科快传网快生活快软网快好知文好找美丽时装彩妆资讯历史明星乐活安卓数码常识驾车健康苹果问答网络发型电视车载室内电影游戏科学音乐整形