转:https://blog.csdn.net/zguiz/article/details/54633115
#include<stdio.h>
#include<string.h>
using namespace std;
#define MAX_VERTEX_NUM 20
#define MAX_INT 999
#define ERROR -1
#define OK 1
struct node
{
int adjvex;
int lowcost;
}closedge[MAX_VERTEX_NUM]; //辅助数组
typedef struct
{
int vex[MAX_VERTEX_NUM]; //图的节点
int arc[MAX_VERTEX_NUM][MAX_VERTEX_NUM]; //图的矩阵 每条边的权
int vexnum,arcnum;
}MGraph; //图的信息
int Locate(MGraph *G,int a) //定位
{
for(int i=0;i<G->vexnum;i++)
{
if(a==G->vex[i])
return i;
}
return ERROR;
}
int CreateUDN(MGraph *G)
{
printf("请输入顶点数和边数: \n");
scanf("%d%d",&G->vexnum,&G->arcnum);
printf("请输入具体的顶点值: \n");
for(int i=0;i<G->vexnum;i++)
{
sca