力扣 简单 70.爬楼梯

文章目录

题目介绍

题解

思路分析:

  1. 确定dp数组以及下标的含义:dpi: 爬到第i层楼梯,有dpi种方法
  2. 确定递推公式:从dpi的定义可以看出,dpi 可以有两个方向推出来。首先是dpi - 1,上i-1层楼梯,有dpi - 1种方法,那么再一步跳一个台阶不就是dpi了么。还有就是dpi - 2,上i-2层楼梯,有dpi - 2种方法,那么再一步跳两个台阶不就是dpi了么。所以++dpi = dpi - 1 + dpi - 2。++
  3. dp数组初始化:dp1 = 1,dp2 = 2
  4. 确定遍历顺序:从递推公式dpi = dpi - 1 + dpi - 2;中可以看出,遍历顺序一定是从前向后遍历的。
  5. 举例推导dp数组:从上图也可以看出来

代码实现:

java 复制代码
n是大于等于1的
class Solution {
    public int climbStairs(int n) {
        int[] dp = new int[n + 1];
        dp[0] = 1;
        dp[1] = 1;
        for (int i = 2; i <= n; i++) {
            dp[i] = dp[i - 1] + dp[i - 2];
        }
        return dp[n];
    }
}
相关推荐
yi0114 分钟前
LeetCode 15:三数之和|排序 + 双指针,如何避免重复答案?
笔记·python·算法·leetcode·双指针
Raas10011 分钟前
AI网关能做语义缓存吗?MAI Gateway(魔芋企业级AI网关)实战能力深度解读
java·后端·spring
天空鸟_时光不老18 分钟前
13-亮点提炼:把技术说辞翻译成业务价值
java·spring boot·spring·spring cloud·mybatis
-dzk-19 分钟前
【多维动态规划】LC 1143.最长公共子序列
算法·动态规划
小蒜学长22 分钟前
基于SpringBoot+Vue的租房管理系统的设计与实现(代码+数据库+LW)
java·数据库·spring boot·后端·租房管理
C++ 老炮儿的技术栈24 分钟前
char (*csConnectName)[256]; 和 char csConnectName [256] 有什么区别
java·c语言·开发语言·c++·人工智能·算法·c
洋就在江州28 分钟前
gitlab-cicd 离线集成——springboot-cicd (非docker形式,shell形式)
java·spring boot·后端·ci/cd·gitlab·gitlab-runner
Omics Pro34 分钟前
全新可重分析!代谢组质谱专用
数据库·人工智能·算法·机器学习·自然语言处理
CEZ35 分钟前
JeeWMS 开源 WMS 全景导览:一套 Java 仓库管理系统从单据流到代码入口的阅读地图
java·开源
Nebula_g35 分钟前
JavaSE加强:线程Thread(线程安全重点)
java·开发语言·jvm·算法·javase·技术栈