爬楼梯
题目描述
题目链接:70. 爬楼梯
假设你正在爬楼梯。需要 n
阶你才能到达楼顶。
每次你可以爬 1
或 2
个台阶。你有多少种不同的方法可以爬到楼顶呢?
示例1:
1 | 输入:n = 2 |
示例2:
1 | 输入:n = 3 |
提示:
1 <= n <= 45
我的题解
方法一:动态规划
思路
当爬到第n阶楼梯时,有两种方法可以到达:
- 从n-1阶楼梯爬1阶到第n阶
- 从n-2阶楼梯爬2阶到第n阶
因此动态规划公式为:dp[n] = dp[n-1] + dp[n-2]
因为当前状态只依赖前两个状态,因此,可以使用变量优化
代码
1 | class Solution { |
结果
执行用时:0 ms, 在所有 Java 提交中击败了100.00%的用户
内存消耗:38.5 MB, 在所有 Java 提交中击败了25.77%的用户
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 狼族少年、血狼!