#include<stdio.h>
#include<stdlib.h>
#define INFINTY 65535 //最大值
#define MAX 20 //最大顶点个数
#define OK 1
#define ERROR 0
#define FALSE 0
#define TRUE 1
typedef int status;
typedef int EdgeType;//边
typedef char VertexType;//顶点类
//typedef enum{DG,DN,UDG,UDN}GraphKind;//有向图,有向网,无向图,无向网
typedef struct
{
VertexType vexs[MAX];//顶点
EdgeType arcs[MAX][MAX]; //邻接矩阵
int vexnum,arcnum; //图当前的顶点数和弧数
// GraphKind kind; //图的种类
}MGraph;
status LocateVex(MGraph *G,VertexType e)
{
int i;
for(i=0;i<G->vexnum;++i)
{
if(e==G->vexs[i])
return i;
}
return -1;
}
status CreatUDG(MGraph *G)//无向图
{
scanf("%d %d",&G->vexnum,&G->arcnum);getchar();
int i,j,k;
VertexType v1,v2;
i=0;
while(i<G->vexnum)
{
scanf("%c",&G->vexs[i]);
i++;
}
getchar();
for(i=0;i<G->vexnum;i++)//初始化
for(j=0;j<G->vexnum;j++)
G->
无向图的深度优先遍历(邻接矩阵)
最新推荐文章于 2025-02-13 16:28:50 发布