递归:

1、一个构成递归调用的函数

void DonotRunMe()

{ DonotRunMe(); }

简言之:递归就是“自己调用自己”。

2、递归的特点:

1)先从大到小,再从小到大;

2)每个步骤要干的事情都是类似的,只不过其规模“小一号”;

3)必须要保持递归调用的过程可以终结。

3、递归编程的模式:

1)每个递归函数的开头一定是判断递归结束条件是否满足的语句(一般是if语句);

2)函数体一定至少有一句是“自己调用自己”的。

3)每个递归函数一定有一个控制递归可以终结的变量(通常是作为函数的参数而存在)。

4)每次自己调用自己时,此变量会变化(一般是变小),并传送给被调用的函数。

4、递归 vs 递推:

1)“递归”是“由后至前再回来”,要求第n项,先求第n-1项,……,倒推到前面的可计算出的某项,然后再返回。

2)递推”是“从前到后”,先求第1项,然后,在此基础上求第2项,第3项,直至第n项,通常可以直接使用循环语句实现

posted on 2021-09-27 20:37  辰逸1  阅读(41)  评论(0编辑  收藏  举报