Floyd算法 最短路径

复制代码
#include <iostream>
using namespace std;
const int INF=99999;
int main()
{
  //读入数据的过程和dfs没什么区别,就不讲解了 
    int i,j,n,m,k,a,b,c;
    int dist[105][105];
    cin>>n>>m;
    for(i=1;i<=n;i++)
        for(j=1;j<=n;j++)
            if(i==j)    dist[i][j]=0;  
                else    dist[i][j]=INF;  
 
            for(i=1;i<=m;i++)
            {
                cin>>a>>b>>c;
                dist[a][b]=c;
            }
 
     //核心代码
     for(k=1;k<=n;k++)
         for(i=1;i<=n;i++)
             for(j=1;j<=n;j++)
                if(dist[i][k]+dist[k][j]<dist[i][j])
                     dist[i][j]=dist[i][k]+dist[k][j]; 
    
     for (i=1;i<=n;i++){
       for(j=1;j<=n;j++){
         cout<<dist[i][j]<<"\t";
     }
     cout<<endl;
   }
 
        return 0;
}
复制代码

 

posted @   九点的日落  阅读(28)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 如何调用 DeepSeek 的自然语言处理 API 接口并集成到在线客服系统
· 【译】Visual Studio 中新的强大生产力特性
· 2025年我用 Compose 写了一个 Todo App
点击右上角即可分享
微信分享提示