//void BFS(AGraph *G,int v,int visit[maxSize])
void DS(AGraph *G,int v,int visit[maxSize])
{
//visit数组被初始化为全0
ArcNode *p;
//int que[maxSize],front=0,rear=0;
int stack[maxSize],top=-1;
int j;
visit[v]=1;
//rear=(rear+1)%maxSize;
//que[rear]=v;
stack[++top]=v;
while(front!=rear)
{
//front =(front+1)%maxSize;
//j=que[front];
j=stack[top--];
p=G->adjlist[j].firstarc;
while(p!=NULL)
{
if(visit[p->adjvex]==0)
{
visit[p->adjvex]=1;
//rear=rear+1;
//que[rear]=p->adjvex;
stack[++top]=p->adjvex;
}
p=p->nextarc;
}
}
}