注册 登录
编程论坛 数据结构与算法

为什么要用递归而不用循环?

wufaxian 发布于 2022-08-08 17:44, 1023 次点击
看了一下递归算法的介绍。感觉都可以用循环来实现。而且递归因为出栈入栈还要占用大量内存空间。可以自我调用的次数也有限。所以大部分递归算法 解决的问题为为什么不用循环来解决呢?难道在相同运算次数的前提下,递归算法比循环运算速度快?

另外有一种感觉。就是C语言也不想想象中那么“灵活”。比如当你在C语言使用递归算法。编译以后程序还是会“自动对内存进行出栈入栈”操作。你只要用了递归算法,内存就会这样被使用。你没得选。当然如果你编写的每一段代码如何使用内存都要自己掌控,那就成了汇编语言了。但是感觉递归算法的内存调用还是被C语言编译器“写死了”,不知道我这种看法对不对?
1 回复
#2
zbjzbj2022-08-08 18:23
递归编程简单,理解简单。有些情况用循环编程层级非常多,用递归九简单多了。

[此贴子已经被作者于2022-8-8 18:24编辑过]

1