//递归:在函数内部 直接或者间接的调用函数自己
//递归的条件:
//1-函数自己调用自己
//2-必须有结束递归的条件
//化归思想:将一个问题由难化易,由繁化简,由复杂化简单的过程称为化归,它是转化和归结的简称
// 直接调用自身
// function test(){
// console.log('test----');
// test();
// }
//
// test();
//间接调用自身
// function test(){
// console.log('test1');
// test2();
// }
//
// function test2(){
// console.log('test2');
// test();
// }
//
// test();
//小明想知道他:太爷爷名字
//小明问他爸爸
//爸爸去问爷爷
//爷爷告诉爸爸
//爸爸告诉小明
//求数字前n项的和
//求前n项
// f(3);
//前5项的和 f(5)=5+f(4)
//前4项的和 f(4)=4+f(3)
//前3项的和 f(3)=3+f(2)
//前2项的和 f(2)=2+f(1)
//前1项的和 f(1)=1
function f(n){
if(n==1){
return 1;
}
return n+f(n-1);
}
console.log(f(5));
console.log(f(100));
递归的执行过程
