#include"Graph.h"
//邻接矩阵的深度优先遍历
void DFS(Graph* G, bool visited[], int index)
{
visited[index] = true;
printf("%s",G->vertex[index]);
for (int i = 0; i < G->vexnum; i++)
{
if (G->matrix[index][i] != 0 && !visited[i])
{
DFS(G, visited, i);
}
}
}
void DFSTraverse(Graph*G)
{
bool visited[MAX] = { false };
for (int i = 0; i < G->vexnum; i++)
{
if (!visited[i])
{
DFS(G, visited, i);
}
}
}
int main(int argc, char* argv[])
{
Graph* g;
CreateGraph(g);
PrintGraph(g);
DFSTraverse(g);
DestroyGraph(g);
return 0;
}