递归是一种算法,在程序设计中使用。递归,是指,函数/过程/子程序在运行过程中,调用自身,而产生的,重入现象。
通常把一个大型复杂的问题层层转化为一个与原问题相似的规模较小的问题来求解。
一般来说,递归需要有边界条件、递归前进段和递归返回段。
当边界条件不满足时,递归前进;当边界条件满足时,递归返回。
注意:
(1) 递归就是在过程或函数里调用自身;
(2) 在使用递归策略时,必须有一个明确的递归结束条件,称为递归出口。
其它定义
递归,就是用自己的简单情况,定义自己。
在数学和计算机科学中,递归指由一种(或多种)简单的基本情况定义的一类对象或方法,并规定其他所有情况都能被还原为其基本情况。
例如,下列为某人祖先的递归定义: