道招

走到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);
}
    分类:
更新时间:
上一篇:根据道招网百度统计看程序员日常上班情况下一篇:从mapState、mapMutations的源码看数据归一化normalize

相关文章

关注道招网公众帐号
友情链接
消息推送
道招网关注互联网,分享IT资讯,前沿科技、编程技术,是否允许文章更新后推送通知消息。
允许
不用了