LeetCode——爬楼梯(动态规划)

简介: LeetCode——爬楼梯(动态规划)

这道题目和剑指offer中的青蛙跳台阶是一个问题。

题目描述

image.png

解题思路:动态规划

动态规划的核心思路在于:要想爬到第i个台阶就必须爬到第i-1个台阶和第i-2个台阶,所有的可能性就是这两种情况的和。

var climbStairs = function (n) {
    let dp = [];
    dp[0] = 0;
    dp[1] = 1;
    dp[2] = 2;
    for (let i = 3; i <= n; i++) {
        dp[i] = dp[i - 1] + dp[i - 2];
    }
    return dp[n]
};
复制代码

题目反思

本题如果直接采用递归的方法,肯定是要超时的,动态规划是解决这类问题的好方法。 动态规划的关键在于准确的列出动态规划的方程。


作者:Always_positive

链接:https://juejin.cn/post/7013537908246183944

来源:稀土掘金

著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

目录
打赏
0
0
0
0
6
分享
相关文章
|
9月前
|
力扣每日一题 6/14 动态规划+数组
力扣每日一题 6/14 动态规划+数组
56 1
LeetCode题目55:跳跃游戏【python5种算法贪心/回溯/动态规划/优化贪心/索引哈希映射 详解】
LeetCode题目55:跳跃游戏【python5种算法贪心/回溯/动态规划/优化贪心/索引哈希映射 详解】
深入解析力扣161题:相隔为 1 的编辑距离(逐字符比较与动态规划详解)
深入解析力扣161题:相隔为 1 的编辑距离(逐字符比较与动态规划详解)
LeetCode 题目 96:从动态规划、递归到卡塔兰数实现不同的二叉搜索树
LeetCode 题目 96:从动态规划、递归到卡塔兰数实现不同的二叉搜索树
LeetCode 132题详解:使用动态规划与中心扩展法解决分割回文串 II 的最少分割次数问题
LeetCode 132题详解:使用动态规划与中心扩展法解决分割回文串 II 的最少分割次数问题
LeetCode 131题详解:高效分割回文串的递归与动态规划方法
LeetCode 131题详解:高效分割回文串的递归与动态规划方法
优化解码方法:记忆化搜索和空间优化动态规划的实用指南 【LeetCode 题目 91】
优化解码方法:记忆化搜索和空间优化动态规划的实用指南 【LeetCode 题目 91】
|
9月前
|
力扣每日一题 6/28 动态规划/数组
力扣每日一题 6/28 动态规划/数组
74 0
|
9月前
|
力扣每日一题 6/19 排序+动态规划
力扣每日一题 6/19 排序+动态规划
47 0
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等