function steps(n) {
if(n <= 3) return n;
return steps(n - 2) + steps(n - 1);
}
假如楼梯有n个台阶,每次可以走1个或2个台阶,请问走完这n个台阶有几种走法
如果第一步选1个台阶,后面就会剩下n-1个台阶,也就是会有f(n-1)种走法。
如果第一步选2个台阶,后面会有f(n-2)个台阶。
对于n个台阶来说,就会有f(n-1) + f(n-2)种走法。
function total(n) {
if(n == 1) {return 1}
if(n == 2) {return 2}
return total(n-1) + total(n-2)
}
网友评论