求源点0到终点9的最短路径
#include
#define maxn 100 //假设最多有100个点
using namespace std;
const int MAX=999999;//假设每条边的权值均不超过MAX
int arc[maxn][maxn];//权值数组
int cost[maxn]; //存储路径长度
int path[maxn]; //存储路径
int create() //建图
{
int i,j,k;
int w,v,arcnum;
cout<<"请输入顶点的个数和边的个数:";
cin>>v>>arcnum;
for(i=0;i
>i>>j>>w;
arc[i][j]=w;
}
return v;//返回顶点个数
}
int inp(int n) //求n个顶点的多段图的最短路径
{
int i,j,temp;
for(i=1;i
=0;j--) //考察所有入边
{
if(arc[j][i]+cost[j]
=0) //依次输出path[i]
{
cout<<"<-"<