走到N层台阶有多少中走法
如果您发现本文排版有问题,可以先点击下面的链接切换至老版进行查看!!!
走到N层台阶有多少中走法
假设题目是有N层台阶,每次可以走一层或者两层,总共有几种走法。
首先我们不能简单的想到从小到大来求解,这种题需要用到数学归纳法,要先从N开始求解。首先想到既然要到N层,他能怎么到呢?只能是从第N-1层走一层到达N层,或者从N-2层一次走两层到达N层,只有这两种走法,所以我们很自然的想到f(n) = f(n-1) + f(n-2)
了。然后我们很轻松的知道f(1) = 1
,f(2) =2
function f(n) {
if(n <=1) return 1;
if(n===2) return 2;
return f(n-1) + f(n-2)
}
`
是不是看到了斐波那契数列了?
那尾调用优化肯定要问的
```javacript
function f(n, a = 1, b =1) {
if(n < =1) return b;
return f(n – 1, b, a + b);
}
- 分类:
更新时间: