<分区>
我想知道,为什么人们要使用递归?在我的大部分学习经历中,我发现它比迭代方法效率低得多,那么人们为什么要使用它呢?是因为您可以简单地编写一个更短的方法吗?它是否用于类环境(或学习目的)之外的真实世界编程?如果是,请提供一个很好的例子,我很好奇。
在此先感谢您的帮助!非常感谢!
<分区>
我想知道,为什么人们要使用递归?在我的大部分学习经历中,我发现它比迭代方法效率低得多,那么人们为什么要使用它呢?是因为您可以简单地编写一个更短的方法吗?它是否用于类环境(或学习目的)之外的真实世界编程?如果是,请提供一个很好的例子,我很好奇。
在此先感谢您的帮助!非常感谢!
最佳答案
如果你有一个树数据结构,并且你想以深度优先的顺序遍历它,递归是唯一的方法。
如果您想为具有上下文无关规则的典型语言编写解析器,就像现有的所有编程语言一样,递归下降解析器是一种简单而自然的方法。 存储空间有限,没有迭代方法。
关于performance - 为什么要使用递归?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20332110/