图中点到点最短路径长度
来源:互联网 发布:血族手游 知乎 编辑:程序博客网 时间:2024/05/01 03:53
求图中一个点到另一个点的最短路径长度
1.递归公式
2.代码实现
int large=INT_MAX;int MostShortPath(int **G,int len,int i,int j) //邻接矩阵G用来表示图,G[i.i]=0;若Vi不指向Vj,则G[i,j]=INT_MAX;{static int *A=new int[len]; for(int k=0;k<len;k++)A[k]=0;if(i==j)return 0;if(A[i]>0)return A[i];int min=large;int temp;for(int k=0;k<5;k++){if( *((int*)G+i*len+k )>0&&*((int *)G+i*len+k)!=large ){temp=(*((int *)G+i*len+k))+MostShortPath(G,len,k,j);if(min>temp)min=temp;}}A[i]=min;return A[i];}
3.举例:
int main(){int G[5][5]={{0,1,2,large,large},{large,0,large,5,large},{large,3,0,3,1},{large,large,large,0,large},{large,large,large,1,0}};int n=MostShortPath((int**)G,5,0,3);std::cout<<"最短路径长度为:"<<n<<std::endl;return 0;}
结果:
0 0
- 图中点到点最短路径长度
- 图的Flord算法(图中点到点的最短距离
- BFS--点到点间的最短路径
- 迷宫最短路径长度bfs
- 【DP】三角形中的最短路径长度
- 动态规划求解国际象棋中车点到点的最短路径总数
- 怎样通过boost库的breadth_first_search算法查找点到点的最短路径
- 图@ 最短路径
- 图---最短路径
- 图 - 最短路径
- 迷宫问题(求最短路径长度和最短路径)
- 数据结构 图 最短路径
- 图::最短路径问题
- 图(六)最短路径
- 图的最短路径
- 图(4)--最短路径
- 图的最短路径
- 图(最短路径)
- Linux体系结构
- 监控linux系统某文件的生成,并进行另一个脚本
- BOIS来电自启动
- C++中typename的用法
- Ubuntu12搭建nutch1.2+tomcat7+jdk1.6
- 图中点到点最短路径长度
- WPF程序禁止win7窗口自动最大化
- 使用AsyncTask时出现doInBackground没有调用的处理方法
- Android 一键分享功能开发教程
- SpringMVC拦截器(资源和权限管理)
- Node.js fatal error: bits/c++config.h: No such file or directory
- STM32101RB jlink配置
- Android自定义设置圆形图片控件
- Android 关闭线程