最新算法12--最短路径--弗洛伊德(Floyd)算法PPT课件.ppt

最新算法12--最短路径--弗洛伊德(Floyd)算法PPT课件.ppt

ID:62176204

大小:1.38 MB

页数:26页

时间:2021-04-20

最新算法12--最短路径--弗洛伊德(Floyd)算法PPT课件.ppt_第1页
最新算法12--最短路径--弗洛伊德(Floyd)算法PPT课件.ppt_第2页
最新算法12--最短路径--弗洛伊德(Floyd)算法PPT课件.ppt_第3页
最新算法12--最短路径--弗洛伊德(Floyd)算法PPT课件.ppt_第4页
最新算法12--最短路径--弗洛伊德(Floyd)算法PPT课件.ppt_第5页
资源描述:

《最新算法12--最短路径--弗洛伊德(Floyd)算法PPT课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、算法12--最短路径--弗洛伊德(Floyd)算法2求最短路径步骤初始时设置一个n阶方阵,令其对角线元素为0,若存在弧,则对应元素为权值;否则为逐步试着在原直接路径中增加中间顶点,若加入中间点后路径变短,则修改之;否则,维持原值所有顶点试探完毕,算法结束3.Floyd算法思想:逐个顶点试探法从图的带权邻接矩阵G.arcs出发,假设求顶点Vi到Vj的最短路径。如果从Vi到Vj有弧,则从Vi到Vj存在一条长度为G.arcs[i][j]的路径,但该路径是否一定是最短路径,还需要进行n次试探。1.第一次,判别(Vi,V0)和(V0,Vj),即判别(Vi,V0,Vj)是

2、否存在,若存在,则比较(Vi,Vj)和(Vi,V0,Vj)的长度,取长度较短的为从Vi到Vj的中间顶点序号不大于0的最短路径。V2V3V0V112345689以D(1)为基础,以V2为中间顶点,求从Vi,到Vj的最短路径。或者为从Vi到Vj的边,或者为从Vi开始通过V0,V1,V2到达Vj的最短路径。D(2)[i][j]=min{D(1)[i][j],D(1)[i][2]+D(1)[2][j]}0123012301240092350801608888A(-1)=47A(0)=1036D(1)=D(2)=12910V0V1V201230123012400923508016088

3、88A(-1)=47A(0)=1036A(1)=D(2)=12910D(3)=V2V3V0V112345689以D(2)为基础,以V3为中间顶点,求从Vi,到Vj的最短路径。或者为从Vi到Vj的边,或者为从Vi开始通过V0,V1,V2,V3到达Vj的最短路径。D(3)[i][j]=min{D(2)[i][j],D(2)[i][3]+D(2)[3][j]}9118V3V2V0V1D(3)[i][j]即为从Vi到Vj的最短路径长度.9ACB264311041160230初始:路径:ABACBABCCA046602370加入B:路径:ABABCBABCCACAB041160237

4、0加入A:路径:ABACBABCCACAB046502370加入C:路径:ABABCBCABCCACAB例题:10例ACB264311初始:041160230length=011202300path=加入A:0411602370length=011202310path=加入B:046602370length=012202310path=加入C:046502370length=012302310path=114.论点:A(-1)[i][j]是从顶点vi到vj,中间顶点是v1的最短路径的长度,A(k)[i][j]是从顶点vi到vj,中间顶点的序号不大于k的最短路径的长度,A(n

5、-1)[i][j]是从顶点vi到vj的最短路径长度。证明:归纳证明,始归纳于s(上角标);(1)归纳基础:当s=-1时,A(-1)[i][j]=Edge[i][j],vi到vj,不经过任何顶点的边,是最短路径。(2)归纳假设:当s

6、最短路径(标号不高于k-1);A(k-1)[i][k]:是i到k的最短路径(标号不高于k-1);A(k-1)[k][j]:是k到j的最短路径(标号不高于k-1);所以:A(k)[i][j]是i到j的最短路径(标号不高于k)。13图用邻接矩阵存储edge[][]存放最短路径长度path[i][j]是从Vi到Vj的最短路径上Vj前一顶点序号5.算法实现voidfloyd(){for(inti=0;i

7、不经过任何顶点for(intk=0;k

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。