深度优先搜索使用LIFO / Stack . 广度优先搜索使用FIFO /队列 . 递归算法使用什么?两者结合?
递归算法总是使用深度优先搜索(DFS)
Pseudocode
Input: 图G和G的顶点v
Output: 所有可从v标记为已发现的顶点
DFS的递归实现:
1 procedure DFS(G,v): 2 label v as discovered 3 for all edges from v to w in G.adjacentEdges(v) do 4 if vertex w is not labeled as discovered then 5 recursively call DFS(G,w)
Wiki source here
1 回答
递归算法总是使用深度优先搜索(DFS)
Pseudocode
Input: 图G和G的顶点v
Output: 所有可从v标记为已发现的顶点
DFS的递归实现:
Wiki source here