资源简介

采用Warshall算法,从邻接矩阵求可达矩阵

资源截图

代码片段和文件信息


#include 
#include 
#include 

void main(void)
{  
char *filename = “out.txt“;
FILE* filedesc = fopen (filename “w“);  //返回一个文件指针

      if (filedesc == NULL){
         printf (“\n\nOutput file %s cannot be created.\n\n“ filename);
         return;
      }

int ** adj_matrix;  //指向二维数组的指针
int node_num = 10;

adj_matrix = (int **)malloc( sizeof(int*)*node_num );
for(int j=0; j adj_matrix[j] = (int *)malloc( sizeof(int*)*node_num );
}
//初始化
for(int i=0; i for(int j=0; j {
adj_matrix[i][j] = 0;
}
}

adj_matrix[0][1] = 1;
adj_matrix[1][2] = 1;
adj_matrix[1][4] = 1;
adj_matrix[2][3] = 1;
adj_matrix[3][6] = 1;
adj_matrix[4][5] = 1;
adj_matrix[5][6] = 1;
adj_matrix[6][7] = 1;
adj_matrix[6][8] = 1;
adj_matrix[7][9] = 1;
adj_matrix[8][9] = 1;


for(int i=0; i printf(“%5d\t\t“ i);
fprintf(filedesc “%5d\t\t“ i);
for(int j=0; j {
printf(“%5d\t“ adj_matrix[i][j]);
fprintf(filedesc “%5d\t“ adj_matrix[i][j]);
}
printf(“\n“);
fprintf(filedesc “\n“);
}

//Warshall算法
for(int i=0; i for(int j=0; j if(adj_matrix[j][i] == 1){
for(int k=0; k if(k != i && adj_matrix[j][k] ==0)
adj_matrix[j][k] = adj_matrix[i][k];  //(j k) = (j i) -- (i k)
}
}
}
}

//打印可达矩阵
printf(“\n\t\t“);
fprintf(filedesc “\n\t\t“);
for(int j=0; j printf(“%5d\t“ j);
fprintf(filedesc “%5d\t“ j);
}
printf(“\n“);
fprintf(filedesc “\n“);

for(int i=0; i printf(“%5d\t\t“ i);
fprintf(filedesc “%5d\t\t“ i);
for(int j=0; j printf(“%5d\t“ adj_matrix[i][j]);
fprintf(filedesc “%5d\t“ adj_matrix[i][j]);
}
printf(“\n“);
fprintf(filedesc “\n“);
}

fclose (filedesc);  //关闭文件

//释放内存
for(int j=0; j free(adj_matrix[j]);
}
free(adj_matrix);

printf( “\nPress any key to continue ...\n“);
while( !_kbhit() );

}


 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件       2183  2012-10-24 21:07  邻接矩阵到可达矩阵\test.cpp

     文件       4021  2012-10-23 15:02  邻接矩阵到可达矩阵\test.dsp

     文件        535  2012-10-18 09:28  邻接矩阵到可达矩阵\test.dsw

     文件      48640  2012-10-23 15:08  邻接矩阵到可达矩阵\test.opt

     文件        874  2012-10-23 15:08  邻接矩阵到可达矩阵\test.sln

    ..A..H.      7680  2012-10-23 15:32  邻接矩阵到可达矩阵\test.suo

     文件       5104  2012-10-23 15:08  邻接矩阵到可达矩阵\test.vcproj

     文件       1425  2012-10-23 15:32  邻接矩阵到可达矩阵\test.vcproj.CAECC.zhengp.user

     目录          0  2012-10-24 21:05  邻接矩阵到可达矩阵

----------- ---------  ---------- -----  ----

                70462                    9


评论

共有 条评论