C语言实现最短路径
1、首先打开VC++6.0

3、选择C++ source file 新建一个空白文档

5、定义数组以及用到的函数int arcs[MAX_VEX娄多骋能_NUM][MAX_VEX_NUM] = {{MAX_INT,MAX_INT,10,MAX_INT,30,100},{MAX_INT,MA淌捌釜集X_INT,5,MAX_INT,MAX_INT,MAX_INT},{MAX_INT,MAX_INT,MAX_INT,50,MAX_INT,MAX_INT},{MAX_INT,MAX_INT,MAX_INT,MAX_INT,MAX_INT,10},{MAX_INT,MAX_INT,MAX_INT,20,MAX_INT,60},{MAX_INT,MAX_INT,MAX_INT,MAX_INT,MAX_INT,MAX_INT}};int D[MAX_VEX_NUM] = {0,0,0,0,0,0};int final[MAX_VEX_NUM] = {0,0,0,0,0,0};int previous[MAX_VEX_NUM] = {-1,-1,-1,-1,-1,-1};

7、输出函数void PrintPath(int k){ if(previous[k] == -1) { printf("\nthere is path!!\n"); } else { if(previous[k] == 0) printf("\n0 -> %d ",k); else { PrintPath(previous[k]); printf(" -> %d ",k); } }}

9、执行结果

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
阅读量:93
阅读量:70
阅读量:54
阅读量:94
阅读量:34