【文件属性】:
文件名称:弗洛伊德算法
文件大小:642KB
文件格式:RAR
更新时间:2015-06-10 04:35:08
弗洛伊德算法
弗洛伊德算法
#include "stdio.h"
#include "iostream.h"
#include "stdlib.h"
#include
#define INFINITY 32767//int型的最大值为∞
#define MAX_VEX_NUM 30//最大顶点个数
typedef struct{
char vexs[MAX_VEX_NUM+1];//顶点信息
int arcs[MAX_VEX_NUM+1][MAX_VEX_NUM+1];//邻接矩阵存放权值
int vexnum,arcnum;//顶点数,弧(边)数
}AdjGraph;
int CenterVex(AdjGraph *g);//带权图的邻接矩阵建立
AdjGraph *CreateAdjGrahp();//Floyd算法
void main()
{
int k;
AdjGraph *g;
g=CreateAdjGrahp();
k=CenterVex(g);
cout<<"中心顶点为:"<vexs[k]<):"<vexnum,&g->arcnum);//读入顶点个数和边数
cout<<"输入顶点信息:(如:abcde)"<vexs[1]);
for(i=1;i<=g->vexnum;i++)
scanf("%c",&g->vexs[i]);//读入顶点信息
for(i=1;i<=g->vexnum;i++)
for(j=1;j<=g->vexnum;j++)
g->arcs[i][j]=INFINITY;//初始化邻接矩阵
cout<<"顶点<->序号"<vexnum;k++)
{
printf("L<->%d",g->vexs[k],k);
cout<"<arcnum;k++)
{
scanf("%d%d%d",&i,&j,&x);//输入边信息,建立邻接矩阵
g->arcs[i][j]=x;
}
return g;
}//CreateGraph
【文件预览】:
弗洛伊德算法
----弗洛伊德算法.opt(48KB)
----弗洛伊德算法.dsp(3KB)
----弗洛伊德算法.dsw(532B)
----弗洛伊德算法.cpp(3KB)
----弗洛伊德算法.ncb(33KB)
----Debug()
--------弗洛伊德算法.ilk(393KB)
--------弗洛伊德算法.pch(1.95MB)
--------vc60.idb(81KB)
--------弗洛伊德算法.obj(19KB)
--------弗洛伊德算法.pdb(601KB)
--------弗洛伊德算法.exe(264KB)
--------vc60.pdb(108KB)
----弗洛伊德算法.plg(1KB)