首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

全部点对最短路径

2012-10-18 
所有点对最短路径#include stdio.h#include iostream.h#include stdlib.h #define Max 255#define N

所有点对最短路径
#include <stdio.h>
#include <iostream.h>
#include <stdlib.h>
#define Max 255
#define N 3

int main(void)
{
   int D[N][N] = {{0,2,9},{8,0,6},{1,Max,0}};
   cout<<"Original D is : \n";
   for(int i =0;i<N;i++)
   {
      for(int j=0;j<N;j++)
          cout<<D[i][j]<<" ";
      cout<<"\n";
   }
   for(int k=0;k<N;k++)
       for(int i=0;i<N;i++)
           for(int j=0;j<N;j++)
           {
               if(D[i][j] > D[i][k] + D[k][j])
                  D[i][j] = D[i][k] + D[k][j]; 
           }
  
   cout<<"Minimum D is : \n";
   for(int i =0;i<N;i++)
   {
      for(int j=0;j<N;j++)
          cout<<D[i][j]<<" ";
      cout<<"\n";
   }
   system( "PAUSE ");
   return 0;  
}

热点排行