算法:爬楼梯(迭代和动态规划)

迭代 时间复杂度 O(n) 空间复杂度 O(1)

/**
 * @param {number} n
 * @return {number}
 */
var climbStairs = function(n) {
    let  l = 0, r = 0 , sum = 1
    for(let i=1; i<=n; ++i){
        l = r
        r = sum
        sum = l + r
    }
    return sum
};

 动态规划 时间复杂度 O(n) 空间复杂度 O(n)

/**
 * @param {number} n
 * @return {number}
 */
var climbStairs = function(n) {
    if(n==1){
        return 1
    }
    let dp = []
    dp[1] = 1
    dp[2] = 2
    for(let i=3; i<=n; i++){
       dp[i] = dp[i-1] + dp[i-2]
    }
    return dp[n]
};

相关推荐

  1. 算法学习:动态规划楼梯问题

    2023-12-15 02:50:02       39 阅读
  2. C语言入门算法——楼梯(了解动态规划

    2023-12-15 02:50:02       43 阅读
  3. 动态规划|70.楼梯(进阶)

    2023-12-15 02:50:02       34 阅读
  4. 动态规划】Leetcode 70. 楼梯【简单】

    2023-12-15 02:50:02       9 阅读

最近更新

  1. TCP协议是安全的吗?

    2023-12-15 02:50:02       16 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2023-12-15 02:50:02       16 阅读
  3. 【Python教程】压缩PDF文件大小

    2023-12-15 02:50:02       15 阅读
  4. 通过文章id递归查询所有评论(xml)

    2023-12-15 02:50:02       18 阅读

热门阅读

  1. mysql:尽量避免使用select *语句

    2023-12-15 02:50:02       38 阅读
  2. springboot全面加密方案

    2023-12-15 02:50:02       31 阅读
  3. Leetcode.75 颜色分类【荷兰国旗问题】

    2023-12-15 02:50:02       40 阅读
  4. 最长的斐波那契子序列的长度【动态规划解决】

    2023-12-15 02:50:02       37 阅读
  5. UDP网络编程其他相关事项

    2023-12-15 02:50:02       36 阅读
  6. Windows10下MySQL5.7.31解压版安装与卸载

    2023-12-15 02:50:02       48 阅读
  7. not exists用法

    2023-12-15 02:50:02       41 阅读
  8. vue表单输入绑定

    2023-12-15 02:50:02       43 阅读
  9. Scala学习二:访问修饰符/运算符

    2023-12-15 02:50:02       34 阅读