动态规划LeetCode70爬楼梯
题目描述:
假设你正在爬楼梯。需要 n 阶你才能到达楼顶。
每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢?
注意:给定 n 是一个正整数。
方法一:
1 class Solution { 2 public int climbStairs(int n) { 3 if(n==1||n==2) { 4 return n; 5 } 6 return climbStairs(n-1)+climbStairs(n-2); 7 8 } 9 }
很容易想到上面这种方法,其时间复杂度为O(2^n),提交OJ会超时。
方法2:
如何用递推求出第i阶爬法数量?
1 class Solution { 2 public int climbStairs(int n) { 3 int[] dp=new int[n+3]; 4 dp[1]=1; 5 dp[2]=2; 6 for(int i=3;i<=n;i++) { 7 dp[i]=dp[i-1]+dp[i-2]; 8 } 9 return dp[n]; 10 } 11 }
执行用时在所有Java提交中击败了100.00%的用户!!
动态规划原理:
下一题动态规划经典题目LeetCode198打家劫舍
欢迎评论!!共同进步!!
转载于:https://www.cnblogs.com/hengzhezou/p/11042151.html
动态规划LeetCode70爬楼梯相关推荐
- 【c++】leetcode70 爬楼梯
1.题目 leetcode70 爬楼梯 假设你正在爬楼梯.需要 n 阶你才能到达楼顶. 每次你可以爬 1 或 2 个台阶.你有多少种不同的方法可以爬到楼顶呢?示例 1: 输入:n = 2 输出:2 解 ...
- LeetCode--70. 爬楼梯(动态规划)
爬楼梯(动态规划) 1. 题目描述 2. 题目分析 3. C语言实现 1. 题目描述 难度:简单 2. 题目分析 爬楼梯这道题是一个很典型的问题了,这是一道经典的动态规划的问题: 动态规划 不难发现, ...
- LeetCode70. 爬楼梯 [简单]——动态规划
题目描述: 假设你正在爬楼梯.需要 n 阶你才能到达楼顶. 每次你可以爬 1 或 2 个台阶.你有多少种不同的方法可以爬到楼顶呢? 注意:给定 n 是一个正整数. 我的解题: 1.我的第一反应居然是做 ...
- LeetCode-基础动态规划-70. 爬楼梯
描述 70.爬楼梯 假设你正在爬楼梯.需要 n 阶你才能到达楼顶. 每次你可以爬 1 或 2 个台阶.你有多少种不同的方法可以爬到楼顶呢? 注意:给定 n 是一个正整数. 示例 1: 输入: 2 输出 ...
- 动态规划基础——爬楼梯(Leetcode 70)
题目选自Leetcode 70.爬楼梯 动态规划的基础题,类似斐波那契数列一样的一维dp 状态转移方程为: dp[i] = dp[i-1] + dp[i-2]; 题目描述: 解题代码: int cli ...
- [Swift]LeetCode70. 爬楼梯 | Climbing Stairs
★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ ➤微信公众号:山青咏芝(shanqingyongzhi) ➤博客园地址:山青咏芝(https://www.cnblog ...
- 【动态规划】爬楼梯爬的不仅仅是楼梯
深度思考爬楼梯问题,抽取一般过程,目标是对其变式题也能认出并且求解 一.题目描述 假设你正在爬楼梯.需要 n 阶你才能到达楼顶.每次你可以爬 1 或 2 个台阶.你有多少种不同的方法可以爬到楼顶呢? ...
- leetcode70 爬楼梯
爬楼梯 分析:对于每一次向上走台阶一共两种可能,一个台阶或者两个台阶,因此则有递归: f(3) = f(1) + f(2) f(4) = f(2) + f(3) - f(n) = f(n-2) + f ...
- 斐波那契数拓展问题:leetcode-70 爬楼梯问题 leetcode-1137 泰波那契数问题解法
假设你正在爬楼梯.需要 n 阶你才能到达楼顶. 每次你可以爬 1 或 2 个台阶.你有多少种不同的方法可以爬到楼顶呢? 这是道经典的题目,我们可以在Leetcode,pta,剑指offer等地方经常看 ...
最新文章
- 机器学习入门(09)— 偏导数、梯度概念、梯度下降法理论和实现
- 城联数据TSM技术方案起底
- 计算机安全专家建议:尽快为电脑升级打补丁
- lora近几年发展的具体介绍
- mysql: 模糊查询 feild like keyword or feild like keyword , concat(feild1,feild2,feild3) like keyword...
- 安全使用网上银行 享受在线购物时尚生活
- Node.js压缩web项目中的js,css和图片
- iOS应用不同状态下收到推送的处理
- Nodejs 离线文档下载
- GridView里面模板获取唯一值(如ID)
- 【OpenCV学习】准确定位帧
- 农行研发中心软开2020秋招编程题全记录
- 英语中学生测试软件,初中生免费学英语的软件哪个好
- 【数论】Pollard-Rho 算法总结
- python怎么取百位_#python计算结果百位500向下取整,(0-499取000,500-999取500)
- rtx4090和3090性能差距
- centos7.9使用gn+ninja编译程序
- 垂直水平居中的几种实现方式
- lambda-1-lambda简介
- traceroute命令(unix)/tracert命令(windows)的工作原理
热门文章
- 00后大学生调研四五线城镇商户:91%用上移动支付
- 新东方年会diss老板节目爆红!俞敏洪:奖励12万
- Java成神之路——CountDownLatch、CyclicBarrier
- mysql去重查询group_MySQL distinct 与 group by 去重(where/having)
- app分发源码_第三方苹果企业签名源码
- 【clickhouse】yandex 官方 BalancedClickhouseDataSource 源码分析
- 【Elasticsearch】运行 400 多个节点的 Elasticsearch 集群
- 【Elasticsearch】估算在 Elasticsearch 中存储文档的成本
- 【es】es 分布式一致性原理剖析(二)-Meta篇
- 【kafka】服务器上Kafka启动 Cannot allocate memory