迭代与递归区别

原创 2018年04月15日 17:44:52

递归:

是指函数的自我调用。在编程中,一般情况下递归是单个函数的自我调用,并且在特定条件下结束。,它通常把一个大型的复杂的问题转化为一个与原问题相似的规模较小的问题来解决,

递归分为两个阶段:

1)递推:把复杂的问题的求解推到比原问题简单一些的问题的求解;

2)回归:当获得最简单的情况后,逐步返回,依次得到复杂的解.


缺点:

有冗余计算

递归太深容易造成堆栈的溢出;


迭代:

利用变量的原值推算出变量的一个新值,迭代就是A不停的调用B.


缺点:

编写复杂问题时困难。

代码不如递归简洁。

--=== 让你的程序开始说话(在VB中使用文字朗读引擎(TTS)技术)===--

在VB中使用文字朗读引擎(TTS)技术(作者:许锦新 2001年04月10日 13:52)  现今市面上流行的一些英语学习软件,在广告词上经常说自己使用了国际顶尖的全程语音TTS技术,能进行整段英文的...
  • coolstar
  • coolstar
  • 2001-05-04 17:29:00
  • 2322

迭代与递归的区别

  • 2012年11月06日 21:38
  • 2.48MB
  • 下载

关于算法中递归与迭代的小感想

最近刚看完SICP第一章,有一些想法,记录下来。       以斐波那契数为例,它的规则是以0、1为前两个数,从第三个数开始,Fib(n)为前两个数之和。       如果要将上述算法进行语言描述...
  • gotta_free
  • gotta_free
  • 2013-03-26 12:50:20
  • 441

迭代算法与递归算法

     迭代算法是用计算机解决问题的一种基本方法。它利用计算机运算速度快、适合做重复性操作的特点,让计算机对一组指令(或一定步骤)进行重复执行,在每次执行这组指令(或这些步骤)时,都从变量的原值推出...
  • FlowShell
  • FlowShell
  • 2009-10-11 11:26:00
  • 1580

迭代和递归的差别与作用以及理解

//迭代-总结: //这里怎么看出来要迭代什么呢? //注意s这个变量,它一直是以自己或自己的"后代",也就是自己的下一代去跟其他数值"进化". //int s = 1; 祖先s_Ⅰ代 /...
  • idaaa
  • idaaa
  • 2017-10-03 17:46:50
  • 116

轮软件工程中的迭代与增量

  • 2013年04月20日 22:07
  • 70KB
  • 下载

迭代是人,递归是神(迭代与递归的总结:比较)

在计算机编程实现中有常常两种方法:一曰迭代(iterate);二曰递归(recursion)。 从“编程之美”的角度看,可以借用一句非常经典的话:“迭代是人,递归是神!”来从宏观上对二者进行...
  • LG1259156776
  • LG1259156776
  • 2015-07-12 13:55:30
  • 10274

(区别)递归与迭代&&递归与递推&&迭代与递推

(1)分别用递归法和迭代法求阶乘 阶乘的定义往往如下: #include #include // 递归计算阶乘 long factorial_recursion(int n){ ...
  • Yumerina
  • Yumerina
  • 2017-02-21 12:28:42
  • 725

遍历和迭代的实现及区别

待续
  • leer168
  • leer168
  • 2010-01-08 09:23:00
  • 771

递归,递推,迭代的区别

#include #include using namespace std; 递归: 1、程序调用自身的编程技巧称为递归,是函数自己调用自己。 2、使用递归要注意的有两点: 1)递归就是在过程或函数里...
  • weizhengbo
  • weizhengbo
  • 2017-03-10 01:36:35
  • 2191
收藏助手
不良信息举报
您举报文章:迭代与递归区别
举报原因:
原因补充:

(最多只允许输入30个字)