当前位置: 首页 > wzjs >正文

汕尾手机网站建设报价广州顶正餐饮培训学校

汕尾手机网站建设报价,广州顶正餐饮培训学校,营销型网站深度网,青岛建设网站制作弗洛伊德算法(Floyd-Warshall算法)是一种用于求解所有节点对最短路径的动态规划算法,适用于有向图或无向图,且能处理带有负权边的图(但不能有负权环)。该算法的时间复杂度为 O(V3)O(V3),其中 VV…

弗洛伊德算法(Floyd-Warshall算法)是一种用于求解所有节点对最短路径的动态规划算法,适用于有向图或无向图,且能处理带有负权边的图(但不能有负权环)。该算法的时间复杂度为 O(V3)O(V3),其中 VV 是图的节点数。


核心思想

弗洛伊德算法通过逐步优化路径来求解最短路径。其核心思想是:

  1. 对于任意两个节点 ii 和 jj,检查是否存在一个中间节点 kk,使得从 ii 到 jj 的路径可以通过 kk 变得更短。

  2. 通过动态规划逐步更新最短路径。


算法步骤

  1. 初始化

    • 创建一个距离矩阵 DD,其中 D[i][j]D[i][j] 表示节点 ii 到节点 jj 的最短路径长度。

    • 如果 ii 和 jj 之间有直接边,则 D[i][j]D[i][j] 为边的权重;否则为无穷大(∞∞)。

    • 对角线上的值 D[i][i]D[i][i] 初始化为 0(节点到自身的距离为 0)。

  2. 动态规划更新

    • 对于每一个中间节点 kk(从 1 到 VV),更新所有节点对 ii 和 jj 的最短路径:

      D[i][j]=min⁡(D[i][j],D[i][k]+D[k][j])D[i][j]=min(D[i][j],D[i][k]+D[k][j])
    • 即,检查是否通过节点 kk 可以使 ii 到 jj 的路径更短。

  3. 结束

    • 当所有中间节点 kk 都被遍历后,矩阵 DD 中的值即为所有节点对的最短路径。

手动推导:

算法如下:

public class Foloyd {//弗洛伊德最短路径算法复现public static void Floyd(int [] [] dist, int [][] path){int L=dist.length;for(int k=0;k<L;k++){for(int i=0;i<L;i++){for(int j=0;j<L;j++){if(dist[i][k]!=Integer.MAX_VALUE&&dist[k][j]!=Integer.MAX_VALUE){//判断是否通过中转路径能更短if(dist[i][k]+dist[k][j]<dist[i][j]){//更新距离dist[i][j]=dist[i][k]+dist[k][j];//中转点path[i][j]=k;}}}}}System.out.println("最短路径值为:");for(int i=0;i<L;i++){for(int j=0;j<L;j++){System.out.print(dist[i][j]);System.out.print(" ");}System.out.println();}System.out.println("最短路径为:");for(int i=0;i<L;i++){for(int j=0;j<L;j++){System.out.print(path[i][j]);System.out.print(" ");}System.out.println();}}public static void main(String[] args) {int[][] vG= {{0,6,13}, {10,0,4}, {5,Integer.MAX_VALUE,0}};int[][] path={{-1,-1,-1},{-1,-1,-1},{-1,-1,-1}};Floyd(vG,path);}
}

结果如下:

最短路径值为:
0 6 10 
9 0 4 
5 11 0 
最短路径为:
-1 -1 1 
2 -1 -1 
-1 0 -1 

http://www.dtcms.com/wzjs/211970.html

相关文章:

  • 大良做网站优秀网站网页设计
  • 统计网站怎么做私人网站管理软件
  • 网站建设与设计澳门seo关键词排名
  • wordpress安装腾讯云长春网站seo哪家好
  • 医院网站建设seo 工具分析
  • 生鲜电商网站建设与管理关键词优化一般收费价格
  • 武汉婚纱摄影网站设计外贸网站平台
  • 中国做视频网站有哪些内容游戏代理加盟
  • 网站域名 被别人备案优化大师下载
  • 宣传片拍摄制作公司杭州明开seo
  • dw做网站表格插不到右边济南seo网站排名优化工具
  • 房屋设计图平面图温州最好的seo
  • wordpress主题的网站百度推广代理商利润
  • 58同城泉州网站建设百度快速收录工具
  • 做的网站怎么放在网上化妆培训
  • 偃师网站市场调研分析报告怎么写
  • 检查网站的死链接创建网站怎么创
  • 规划怎样做网站seo服务 文库
  • 公司建设网站请示免费发布广告
  • 网站开发测试工程师哪里做网站便宜
  • 给人做赌博网站犯法嘛seo zac
  • 官方网站建设 找磐石网络一流常用的网络营销平台有哪些
  • 广东专业网站优化制作公司百度搜索趋势
  • 建设网站需要多久到账企业网站优化公司
  • 做旅游网站的yi大庆网络推广
  • 网站建设成功案例方案百度搜索关键词技巧
  • 设计师做私单网站廊坊seo关键词优化
  • 网站改版活动吉林关键词优化的方法
  • 做网站是怎么收费的是按点击率怎么建网站卖东西
  • 校友录网站开发设计旺道seo推广有用吗