版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、Johnsons algorithm Johnsons演算法可用於計算All pairs shortest path問題。 在邊的數量不多的時候,如|E|=O(|V|log|V|)時,能有比Warshall-Floyd演算法較佳的效能。 其輸入需求是利用Adjacency list表示的圖。Graph reweightingTheorem. Given a label h(v) for each v V, reweight each edge (u, v) E by(u, v) = w(u, v) + h(u) h(v).Then, all paths between the same two
2、 vertices arereweighted by the same amount.Proof. Let p = v1 v2 vk be a path in the grahThen, we haveProducing Nonnegative Weights 0-40-523451-4376214-18-5000000s0-40-52345104102200-1130510400s( , )( , )( )( )w u vw u vh uh vh vs v( )( , )Johnsons algorithm1. Find a vertex labeling h such that (u, v
3、) 0 for all (u, v) E by using Bellman-Ford to solve the difference constraints h(v) h(u) w(u, v), or determine that a negative-weight cycle exists.Time = O(VE). 2. Run Dijkstras algorithm from each vertex using .Time = O(VE + V2 lg V).3. Reweight each shortest-path length (p) to produce the shortest
4、-path lengths w(p) of the original graph.Time = O(V2). Total time = O(VE + V2 lg V).Johnsons algorithm Johnsons 演算法利用reweighing來除去負邊,使得該圖可以套用Dijkstra演算法,來達到較高的效能。 Reweighing是將每個點v設定一個高度h(v),並且調整邊的weight function w(u,v)成為w(u,v)=w(u,v)+h(u)-h(v)。 令(u,v)如此調整之後的最短距離,則原先的最短距離(u,v)=(u,v)-h(u)+h(v)。Johnson
5、s algorithmJohnson(G) compute G, where VG=VG s and EG=EG (s,v):v VGif Bellman-Ford(G,w,s)=False then print “ a neg-weight cycle”else for each vertex v VG set h(v)= (s,v) computed by Bellman-Ford algo. for each edge (u,v) EG w(u,v)=w(u,v)+h(u)-h(v) for each vertex u VG run Dijkstra(G,w,u) to compute
6、(u,v) for each v VG duv= (u,v)-h(u)+h(v)return DJohnsons algorithm範例範例37428-461-5Johnsons algorithm範例範例37428-461-5s00000加入一個點s,以及自s拉一條weight為0的邊到每一點。Johnsons algorithm範例範例-10-5-4037428-461-5s00000執行Bellman-Ford演算法,得到自s出發每一點的最短距離。Johnsons algorithm範例範例-10-5-4041002130200做完reweightingJohnsons algorith
7、m範例範例2/10/02/-30/-42/241002130200紅線部分是Shortest-paths tree。點的數字a/b代表自出發點(綠色點)出發,到達該點的最短路徑(Reweighting後的圖/原圖)。Johnsons algorithm範例範例0/02/30/-42/-10/141002130200Johnsons algorithm範例範例0/42/70/02/30/541002130200Johnsons algorithm範例範例0/-12/20/-52/-20/041002130200Johnsons algorithm範例範例2/54/82/10/02/641002130200Johnsons algorithm複雜度分複雜度分析析 執行一次Bellman-Ford。O(|V|E|)。 執
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026浙江台州市温岭市新世纪人才开发有限公司受客户委托招聘公益性岗位人员招聘1人建设笔试参考题库及答案解析
- 2026重庆水泵厂有限责任公司招聘3人建设考试参考题库及答案解析
- 2026年中国地质大学(北京)综合地质学期末高分测试卷含答案详解(综合题)
- 2026北京航标时代检测认证有限公司浙江分公司非事业编制人员招聘3人(浙江)建设考试参考题库及答案解析
- 2026年行政办事员通关练习试题汇编附答案详解
- 2026年口腔正畸题库试题附参考答案详解(夺分金卷)
- 2026年海船船员资格全真模拟模拟题【模拟题】附答案详解
- 2026年资产评估师之资产评估基础练习题库(培优)附答案详解
- 2026年食品原料总检测卷(典优)附答案详解
- 2026年血站上岗证考前冲刺练习题及完整答案详解(网校专用)
- 自考写作考试真题及答案
- 茶馆课件公开课
- 山东省临沂市2024-2025学年高二下学期期中考试语文试题(解析版)
- 2025年初级(五级)保育师(保育)技能鉴定《理论知识》真题(答案和解析附后)
- 2025年国家电网考试面试试题试题及答案解析
- 氮气安全培训课件
- 《项目管理案例教程》课件-05 第5章 项目管理的综合应用案例
- DB63-T 1599-2025 高海拔高寒地区公路边坡生态防护技术设计规范
- 第二单元第2课《纹样扮靓生活》(教案及反思)湘美版2025美术七年级下册
- 2025年内蒙古医师协会医师定考考核试题
- CJ/T 3063-1997给排水用超声流量计(传播速度差法)
评论
0/150
提交评论