利用邻接矩阵存储一张图,分别采用图的深度优先搜索和广度优先搜索遍历该图,并输出遍历结果。
主程序:
#include <stdio.h>
#include <stdlib.h>
#define MAXVEX 100 //最大顶点数
#define INFINITY 65535 //用65535来代表无穷大
int visited[MAXVEX]={0};
typedef struct
{
char vexs[MAXVEX]; //顶点表
int arc[MAXVEX][MAXVEX]; //邻接矩阵,可看作边
int numVertexes, numEdges; //图中当前的顶点数和边数
}Graph;
void CreateGraph(Graph *g)
{ int i,j,k,w,t;
printf("输入顶点数,边数和t(中间用空格):");
scanf("%d %d %d", &(g->numVertexes), &(g->numEdges),&t);
printf("\n");
for(i=1;i<=g->numVertexes;i++)
{
getchar();
printf("输入第%d顶点信息vexs[%d]=",i,i);
scanf("%c",&(g->vexs[i]));
}
printf("\n");
for(i=1;i<=g->numVertexes;i++)
for(j=1;j<=g->numVertexes;j++)
i