Recursion 当打印出树中的所有节点时,递归或迭代是否更有效?

Recursion 当打印出树中的所有节点时,递归或迭代是否更有效?,recursion,stack,binary-tree,heap-memory,tree-traversal,Recursion,Stack,Binary Tree,Heap Memory,Tree Traversal,我有点困惑。 我看到很多人说递归效率较低,但通过使用迭代方法,我不需要在堆中分配堆栈,这会使我的程序变慢吗 想法 我看到很多人说递归效率较低 这完全取决于你如何处理基本情况时,树是大的(有更大的深度)。像我这样的人,不考虑递归效率较低的事实,而我总是发现递归会给你以某种方式遍历树(在前、后、级别)上更多的权力(更少的计算风险)。 我不需要在堆中分配堆栈吗 没有 因为,要以迭代方式打印树,可以使用数组或类似的概念设计自己的堆栈式结构 尽管有些语言将每个对象(考虑到数组是一个对象)存储在堆内存中(例

我有点困惑。 我看到很多人说递归效率较低,但通过使用迭代方法,我不需要在堆中分配堆栈,这会使我的程序变慢吗

想法

我看到很多人说递归效率较低

这完全取决于你如何处理基本情况时,树是大的(有更大的深度)。像我这样的人,不考虑递归效率较低的事实,而我总是发现递归会给你以某种方式遍历树(在前、后、级别)上更多的权力(更少的计算风险)。 我不需要在堆中分配堆栈吗

没有

因为,要以迭代方式打印树,可以使用数组或类似的概念设计自己的堆栈式结构


尽管有些语言将每个对象(考虑到数组是一个对象)存储在堆内存中(例如-Java)。

谢谢您的回答!