斐波那契数列算法

158 阅读1分钟

说明

指的是这样一个数列:1、1、2、3、5、8、13、21、34、……在数学上, 斐波那契数列以如下被以递推的方法定义:

F(0)=0F(1)=1, F(n)=F(n - 1)+F(n - 2)(n ≥ 2,n ∈ N*)

应用

爬楼梯

假设你正在爬楼梯。需要 n 阶你才能到达楼顶。

每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢?

/**
 * @param {number} n
 * @return {number}
 */
var climbStairs = function(n) {
    let arr = [0 ,1, 2]
        let i = 3
        while (i<=45) {
          arr[i] = arr[i-2] + arr[i-1]
          i++
        }
        return arr[n]
};