黑马程序员技术交流社区

标题: 迭代和递归的区别 [打印本页]

作者: 张晓珊    时间: 2015-5-26 20:59
标题: 迭代和递归的区别
迭代和递归是每个同学刚接触程序都会学到的两个算法,这两个算法都是利用了循环调用的原理将复杂运算简单化,那么它们两个之间到底有什么区别呢?分别适用于什么情况下呢?

作者: Dariel    时间: 2015-5-26 21:12
递归就是自己调用自己,迭代嘛!就是A不停的调用B
递归中一定有迭代,但是迭代中不一定有递归,大部分可以相互转换.能用迭代的不用递归,递归调用函数,浪费空间,并且递归太深容易造成堆栈的溢出.
作者: 这是829    时间: 2015-5-26 21:13
学习啦,大家讲解的很好啊
作者: hi虚无缥缈    时间: 2015-5-26 21:25
始终不太明白递归函数,已经问了好多人了.
作者: 张晓珊    时间: 2015-5-26 22:16
Dariel 发表于 2015-5-26 21:12
递归就是自己调用自己,迭代嘛!就是A不停的调用B
递归中一定有迭代,但是迭代中不一定有递归,大部分可以相 ...

受教啦!!!
作者: fixer    时间: 2015-5-27 06:32
递归就是找一个1,再找一个--,条件能让它自己递归到1...自己的理解
作者: mnxnm    时间: 2015-5-30 11:42
这样子啊
作者: 任伟    时间: 2015-5-30 16:03
递归是自顶向下逐步拓展需求,最后自下向顶运算.即由f(n)拓展到f(1),再由f(1)逐步算回f(n)
迭代是直接自下向顶运算,由f(1)算到f(n).
作者: 张晓珊    时间: 2015-5-31 00:43
任伟 发表于 2015-5-30 16:03
递归是自顶向下逐步拓展需求,最后自下向顶运算.即由f(n)拓展到f(1),再由f(1)逐步算回f(n)
迭代是直接自下向 ...

谢谢总结
作者: 这是829    时间: 2015-5-31 01:16
围观学习啦,加油!
作者: x331275955    时间: 2015-5-31 11:55
我也想问问,递归那玩意能做到的,是不是for循环也能做到呢?递归看着就乱乱的.一层调一层,内存占的还多.
作者: 任伟    时间: 2015-5-31 11:57
围观同学 加油  你报的是哪期的啊
作者: talent123    时间: 2015-5-31 12:03
套路有点深啊
我对递归的理解还仅仅是数学归纳法
作者: 天是蓝色的    时间: 2015-6-1 21:02
一楼评论不错




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2