递归的基本概念:程序调用自身的编程技巧,就是函数自己调用自己;
一个函数在定义中直接或者间接调用自身的一种方法,它通常是将一个大型的复杂的问题分解为与之相似的小的问题,可以极大的减少代码量;
递归有两个特点:
1)函数自身调用自身;
2)使用递归时必须要有一个明确的出口;
递归分两个阶段:
1)递推:把复杂的问题推到比原问题简单的子问题的求解;
2)回归:当获取最简单的情况后,逐步返回,依次得到复杂问题的解;
由于递归引起一系列函数的调用,而且可能存在一些重复的计算,因此效率并不高;
迭代的意思是从一个已知的问题的解出发,推到出复杂问题的解,如果递归是自身不断调用自身,那么迭代就是A不断调用B;