算法 DepthFirstSearch(v, visited[]) // 以序号为v的顶点出发,深度优先遍历图 // visited[] 是一个辅助数组,用来记录哪些节点已经被访问 DFS1 [打印当前节点] PRINT(v). visited[v] <- 1. DFS2 [获取当前节点的第一个相邻节点] w <- GetFirstNeighbor(v). DFS3 [对当前节点的所有相邻节点,递归调用DFS方法] WHILE w != -1 DO ( IF visited[w] == 0 THEN ( DepthFirstSearch(w, visited[]). w <- GetNextNeighbor(v, w). ) )