一、算法代码
#include <stdio.h>
#include <stdlib.h>
#include <malloc.h>
#define MAXSIZE 100
typedef int VerTexType;
int visited[MAXSIZE];
typedef struct ArcNode{
int adjvex;
ArcNode *nextarc;
}ArcNode;
typedef struct VNode{
VerTexType data;
ArcNode *firstarc;
}Vnode;
typedef struct{
Vnode verxs[MAXSIZE];
int numNodes,numEdqes;
}AGraph;
AGraph* CreatAGraph();
void DFSTraverse(AGraph G);
void BFSTraverse(AGraph G);
int main(){
AGraph * G;
printf("\n---采用邻接表表示图的遍历---\n\n");
G=CreatAGraph();
printf("\n-----------邻接表深度优先搜索遍历序列---------------\n\n");
DFSTraverse(*G);
printf("\n-----------邻接表广度优先搜索遍历序列---------------\n\n");
BFSTraverse(*G);
printf("\n\n");
system("pause");
return 0;
}
typedef int QElemType;
typedef struct QNode{
QElemType data;
struct QNode *next;
}QNode,