问答题 设计一非递归算法采用深度优先搜索对无向图进行遍历,并对算法中的无向图的存储结构予以简单说明。【大连理工大学2003二、1(45/3分)】【北京邮电大学1994十(15分)】
【正确答案】正确答案:下面是深度优先遍历dfso的算法片段。若是非连通图,则主调函数循环调用dfs0若干次(次数等于连通分量的个数)。 while(top>0 ||P!=null) //初值:top=0;p=g[v].firstarc;stack[++top]=p; (while(p) if(p&&visited[p一>adjvex])p=p一>next; else{cout<adjVex;visited[p->adjvex]=1; stack[++top]=p;p=g[p一>adjvex].firstarc; }//else if(top>0}{p=stack[top一一];p=p一>next;} }//while
【答案解析】