爬楼梯【动态规划】

  1. 爬楼梯
    假设你正在爬楼梯。需要 n 阶你才能到达楼顶。
    每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢?
java 复制代码
class Solution {
    public int climbStairs(int n) {
        if (n <= 2) return n;//特殊情况处理
        int dp[] = new int[n + 1];
        dp[1] = 1;//因为数组索引是从0开始的,有n个台阶所以数组length 为[0,n]即n + 1,dp[0]在本题没有意义,可以不予处理
        dp[2] = 2;
        for (int i = 3; i <= n; i++) {
            dp[i] = dp[i - 1] + dp[i - 2];
        }
        return dp[n];
    }
}
相关推荐
王老师青少年编程8 分钟前
csp信奥赛C++高频考点专项训练之贪心算法 --【线性扫描贪心】:数列分段 Section I
c++·算法·编程·贪心·csp·信奥赛·线性扫描贪心
王老师青少年编程8 分钟前
csp信奥赛C++高频考点专项训练之贪心算法 --【线性扫描贪心】:分糖果
c++·算法·贪心算法·csp·信奥赛·线性扫描贪心·分糖果
_日拱一卒11 分钟前
LeetCode:2两数相加
算法·leetcode·职场和发展
py有趣11 分钟前
力扣热门100题之零钱兑换
算法·leetcode
董董灿是个攻城狮29 分钟前
Opus 4.7 来了,我并不建议你升级
算法
无敌昊哥战神1 小时前
【保姆级题解】力扣17. 电话号码的字母组合 (回溯算法经典入门) | Python/C/C++多语言详解
c语言·c++·python·算法·leetcode
脱氧核糖核酸__1 小时前
LeetCode热题100——238.除了自身以外数组的乘积(题目+题解+答案)
数据结构·c++·算法·leetcode
再卷也是菜1 小时前
算法提高篇(1)线段树(上)
数据结构·算法
py有趣1 小时前
力扣热门100题之单词拆分
算法·leetcode
j_xxx404_2 小时前
C++算法:哈希表(简介|两数之和|判断是否互为字符重排)
数据结构·c++·算法·leetcode·蓝桥杯·力扣·散列表