070 Climbing Stairs
2024-09-29 17:43:06
你正在爬楼梯。需要 n 步你才能到达顶部。
每次你可以爬 1 或 2 个台阶。你有多少种不同的方式可以爬到楼顶呢?
注意:给定 n 将是一个正整数。
示例 1:
输入: 2
输出: 2
说明: 有两种方法可以爬到顶端。
1. 1 步 + 1 步
2. 2 步
示例 2:
输入: 3
输出: 3
说明: 有三种方法可以爬到顶端。
1. 1 步 + 1 步 + 1 步
2. 1 步 + 2 步
3. 2 步 + 1 步
详见:https://leetcode.com/problems/climbing-stairs/description/
Java实现:
方法一:
class Solution {
public int climbStairs(int n) {
if(n==0||n==1||n==2){
return n;
}
return climbStairs(n-1)+climbStairs(n-2);
}
}
方法二:
class Solution {
public int climbStairs(int n) {
if(n<2){
return n;
}
int tmp=0,pre=1,res=1;
for(int i=2;i<=n;++i){
tmp=res;
res=pre+res;
pre=tmp;
}
return res;
}
}
方法三:
class Solution {
public int climbStairs(int n) {
if(n==0||n==1||n==2){
return n;
}
int[] dp=new int[n];
dp[0]=1;
dp[1]=2;
for(int i=2;i<n;++i){
dp[i]=dp[i-1]+dp[i-2];
}
return dp[n-1];
}
}
最新文章
- SQL Pretty Printer-不错的SQL格式化工具
- Linux C/C++ Memory Leak Detection Tool
- SQL2012 提示评估已过期 解决方案- sql server问题
- hiho 第117周 二分图多重匹配,网络流解决
- Ext的Panel总结(好文章)
- LeetCode Contains Duplicate II (判断重复元素)
- xcode-select: error: tool &#39;xcodebuild&#39; requires Xcode, but active developer directory &#39;/Library/Deve
- Backbone的 listenTo 和 on
- Linux计划任务(转载)
- Android引入高速缓存的异步加载全分辨率
- DllImport 自动选择x64或x86 dll
- web前端-----第一弹html
- SAS中常见的数组函数
- C Primer Plus 第6章 C控制语句:循环 编程练习
- RocketMQ知识整理与总结
- (十一)QPainter绘图, QPixmap,QImage,QPicture,QBitmap
- JavaScript资源网址
- activity 运行流程图
- 12.equals()方法总结
- RHEL7.3安装mysql5.7
热门文章
- 在你的网站中使用 AdSense广告
- 小程序js页面设置上导航颜色
- 注意!!一定要谨慎使用c/c++原生指针
- MySQL上周新增激活用户在上周下单情况_20161107周一
- BZOJ_2064_分裂_状压DP
- [Codeforces 452E] Three Strings
- javacv实现实时视频截图和录像服务easyCV
- 洛谷 P4721 [模板]分治FFT —— 分治FFT / 多项式求逆
- Hadoop安装全教程 Ubuntu14.04+Java1.8.0+Hadoop2.7.6
- java:Socket介绍(一)