假设你正在爬楼梯。需要 n 阶你才能到达楼顶。
每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢?
示例 1:
输入:n = 3
输出:3
解释:有三种方法可以爬到楼顶。
- 1 阶 + 1 阶 + 1 阶
- 1 阶 + 2 阶
- 2 阶 + 1 阶
提示:
1 <= n <= 45
int climbStairs(int n){
if (n == 1) {
return 1;
}
if (n == 2) {
return 2;
}
return climbStairs(n - 1) + climbStairs(n - 2);
}
本文介绍如何使用动态规划方法解决经典的楼梯爬升问题,探讨递归公式climbStairs(n)并提供示例,帮助理解不同阶数阶梯的不同爬法组合。
427

被折叠的 条评论
为什么被折叠?



