Bos*_*Man 5 algorithm recursion depth-first-search
我试图理解DFS递归和DFS迭代之间的区别.堆栈中的那个使用迭代或递归方法吗?
例如,使用图的DFS递归遍历和图的DFS迭代遍历的输出是什么?邻居按字母顺序迭代.
下图:

对于DFS遍历(具有堆栈的那个,不确定它是递归的还是迭代的)这是我得到的:A,C,D,E,F.有人可以确认这是什么类型的DFS遍历,以及其他如何一个会工作?谢谢!
据我了解,递归和迭代版本仅在堆栈的使用方面有所不同。递归版本使用调用堆栈,而迭代版本执行完全相同的步骤,但使用用户定义的堆栈而不是调用堆栈。步骤顺序本身没有区别(如果使用合适的平局打破规则来确保子节点的相等遍历顺序 - 如果需要的话),因此不可能检查输出来决定是否使用迭代或递归实现。