力扣70题解

记录

2025.5.8

题目:

思路:

1.初始化:p 和 q 初始化为 0,表示到达第 0 级和第 1 级前的方法数。r 初始化为 1,表示到达第 1 级台阶有 1 种方法。

2.循环迭代:从第 1 级到第 n 级台阶进行迭代:

p 更新为前一个 q(即 dp[i-2])。

q 更新为前一个 r(即 dp[i-1])。

r 更新为 p + q(即 dp[i] = dp[i-1] + dp[i-2])。

3.返回结果:循环结束后,r 中存储的就是到达第 n 级台阶的方法数。

代码:

java 复制代码
class Solution {
    public int climbStairs(int n) {
        int p = 0, q = 0, r = 1;
        for (int i = 1; i <= n; ++i) {
            p = q; 
            q = r; 
            r = p + q;
        }
        return r;
    }
}

复杂度:

O(N)

O(1)

相关推荐
每次的天空19 分钟前
Android第十一次面试补充篇
android·面试·职场和发展
小指纹3 小时前
2025山东CCPC题解
c++·算法
PixelMind7 小时前
【LUT技术专题】图像自适应3DLUT
图像处理·深度学习·算法·3dlut
木子.李3478 小时前
数据结构-算法学习C++(入门)
数据库·c++·学习·算法
GIS小天8 小时前
AI预测3D新模型百十个定位预测+胆码预测+去和尾2025年5月31日第94弹
人工智能·算法·机器学习·彩票
武子康9 小时前
大数据-274 Spark MLib - 基础介绍 机器学习算法 剪枝 后剪枝 ID3 C4.5 CART
大数据·人工智能·算法·机器学习·语言模型·spark-ml·剪枝
爱coding的橙子10 小时前
每日算法刷题Day19 5.31:leetcode二分答案3道题,用时1h
算法·leetcode·职场和发展
地平线开发者12 小时前
征程 6EM 常见 QConfig 配置解读与示例
算法·自动驾驶
GEEK零零七12 小时前
Leetcode 1908. Nim 游戏 II
算法·leetcode·博弈论
sbc-study12 小时前
混沌映射(Chaotic Map)
开发语言·人工智能·python·算法