一、概念
程序反复调用自身实现解决问题的方法,称为递归算法。
二、三因素
1、递归终止条件,即递归在什么时候终止。
2、找出返回值,本地递归应该跟上一级递归返回什么值
3、本次递归需要做什么事情。
三、简单运用场景
1、求某个数字的阶乘
首先,确定终止条件,当传递参数为1时,则终止递归。
其次,本级递归应该返回上次需要递归的值。
最后,本级递归需要计算上级递归与本级的乘积。
1 public class Factorial{ 2 /** 3 * 计算阶乘的方法 4 */ 5 int fact(int n){ 6 int result; //定义计算结果 7 if(n == 1){ //当递归到1时,则返回n为1 8 return 1; 9 } 10 result = fact(n-1)*n; 11 return result; //计算结果 12 } 13 }