知乎用户,递归的是神,迭代的是人是什么意思

如题所述

递归:程序调用自身的编程技巧称为递归,是函数自己调用自己。 使用递归要注意的有两点: 1)递归就是在过程或函数里面调用自身; 2)在使用递归时,必须有一个明确的递归结束条件,称为递归出口. 3)递归包含回溯和递推两个阶段。 迭代:利用变量的原值推算出变量的一个新值,如果递归是自己调用自己的话,迭代就是A不停的调用B。 递推:它是按照一定的规律来计算序列中的每个项,通常是通过计算机前面的一些项来得出序列中的指定象的值。其思想是把一个复杂的庞大的计算过程转化为简单过程的多次重复。 递归与递推区别:递归的步骤中包含递推,如一个规模为n的问题,递归首先通过回溯将问题回溯到n-1,n-2……,然后再通过递推从1的结果一直递推到n。 递归与迭代的区别:递归中一定有迭代,但是迭代中不一定有递归,大部分可以相互转换.能用迭代的不用递归,递归调用函数,浪费空间,并且递归太深容易造成堆栈的溢出. 可以这么理解,递推和迭代都是正向的将一个复杂问题分解为小问题,一步一步得出结果;而递归是逆向的,多了一步回溯的过程。 如果有其他编程或测试的问题,可关注搜狗测试公众号或www.sogouqa.com
温馨提示:答案为网友推荐,仅供参考
相似回答