假如你正在爬楼梯。须要 n 阶你能力达到楼顶。
每次你能够爬 1 或 2 个台阶。你有多少种不同的办法能够爬到楼顶呢?
示例 1:输出:n = 2
输入:2
解释:有两种办法能够爬到楼顶。1. 1 阶 + 1 阶
2. 2 阶
示例 2:输出:n = 3
输入:3
解释:有三种办法能够爬到楼顶。1. 1 阶 + 1 阶 + 1 阶
2. 1 阶 + 2 阶
3. 2 阶 + 1 阶
提醒:
1 <= n <= 45
解答:
代码:
var climbStairs = function(n) {let fibArr = [];
fibArr[1] = 1;
fibArr[2] = 2;
for(let i = 3; i <= n; i++) {fibArr[i] = fibArr[i - 1] + fibArr[i - 2];
}
return fibArr[n];
};
console.log(climbStairs(5)) // 8
后果打印
具体如何计算 递归的算法
注:题目来自力扣 LeetCode https://leetcode.cn/problems/…