导航:首页 > 源码编译 > 图上两点之间最短距离算法

图上两点之间最短距离算法

发布时间:2024-01-19 04:05:33

A. 弗洛伊德算法求出最短距离

(1)利用二维数组dist[i][j]记录当前vi到vj的最短路径长度,数组dist的初值等于图的带权邻接矩阵;


(3)依次向S中加入v0,v1…vn-1,每加入一个顶点,对dist[i][j]进行一次修正:设S={v0,v1…vk-1},加入vk,则dist(k)[i][j]=min{dist(k-1)[i][j],dist(k-1)[i][k]+dist(k-1)[k][j]}。

dist(k)[i][j]的含义:允许中间顶点的序号最大为k时从vi到vj的最短路径长度。
dist(n-1)[i][j]就是vi到vj的最短路径长度。

弗洛伊德最短距离算法(FloydShortestPathAlgorithm)又称为插点法,是一种利用动态规划的思想寻找给定的加权图中多源点之间最短路径的算法。该算法名称以创始人之一、1978年图灵奖获得者、斯坦福大学计算机科学系教授罗伯特·弗洛伊德命名。
中文名弗洛伊德最短距离算法
外文名FloydShortestPathAlgorithm
所属学科IT
所属领域程序设计
简介
最短路问题是网络最优化中一个基本而又非常重要的问题,这一问题相对比较简单,在实际生产和生活中经常遇到,许多的网络最优化问题可以化为最短路问题,或者用最短路算法作为其子程序.因此,最短路的用途已远远超出其表面意义迄今为止,所有最短路算法都只对不含负回路的网络有效,实际上对含有负回路的网络,其最短路问题是NP困难的,因此本研究所讨论的网络也不含负回路.此外,如果将无向图每条边用两条端点相同、方向相反的弧来代替,可以将其化为有向图,因而不讨论无向图.本研究中未述及的术语、记号。
Floyd算法是一种用于寻找给定加权图中顶点间最短路径的算法,以1978年图灵奖获得者斯坦福大学计算机科学系教授RobertW.Floyd命名。Floyd算法采用动态规划的原理计算两两顶点间最短路径,主要解决网络路由寻找最优路径的问题。

阅读全文

与图上两点之间最短距离算法相关的资料

热点内容
linux查端口命令 浏览:489
linuxhttp客户端 浏览:820
linux下运行jar包 浏览:435
彩虹弹弹解压球视频 浏览:83
pdf怎样转换成word格式 浏览:673
怎么查找解压文件在哪里 浏览:852
德语小说pdf 浏览:125
陕西联通dns服务器地址 浏览:939
js表格即时编译 浏览:304
51单片机串口拓展 浏览:307
重装系统后加密图片损坏 浏览:465
电脑怎么放大缩小app窗口 浏览:526
教育十APP学校怎么更改 浏览:823
空调外机压缩机热保护 浏览:756
winlinux双系统卸载 浏览:241
如何对安卓应用反编译 浏览:412
鲲鹏pc服务器是什么 浏览:575
一级防震梁箍筋加密 浏览:930
linuxxampp64位 浏览:731
西安哪个app能买到东西 浏览:459