一、递归,就是在运行的过程中不断地调用自己。递归有两个过程,简单地说一个是递的过程,一个是归的过程。简单用代码来理解:
public void fun(参数) {
if (终止条件) {
return;
}
fun(参数);
(其他判断条件或语句);
}
二、递归的使用场景
1、一个大问题可以拆分成多个子问题,大问题和拆分后的子问题相比,除了数据规模的不同,解决思路完全相同
2、存在循环和终止条件
三、完成一个完整的递归,最重要的有两点:
1、使用逆向思维确定好跳出递归的条件;
2、确定好进入递归的条件,并调用自己;
function fn(num1,num2){
let sum = num1+num2 ;
if(num2+1>100){//确定跳出递归的终止条件
return sum;
}else{
return fn(sum,num2+1)//确定进入递归的条件,并调用自己
}
}
let sum = fn(1,2)
console.log(sum); 输出结果:5050
网友评论