[LeetCode][Java] Climbing Stairs
来源:互联网 发布:php文件上传源代码 编辑:程序博客网 时间:2024/06/05 08:27
题目:
You are climbing a stair case. It takes n steps to reach to the top.
Each time you can either climb 1 or 2 steps. In how many distinct ways can you climb to the top?
题意:
假设爬梯子,你需要n步跑到顶。
每次你只能爬1步或者2步。最终你有多少种不同的方式爬到顶。
算法分析:
爬梯子问题实质上就是斐波那契数列:
* 当n=1时,ways=1
* 当n=2时,有[2] [1,1]两种情况,ways=2
* 当n=3时,有[1,1,1] [1,2] [2,1]三种情况,ways=3
* 当n=4时,有[1,1,1,1] [2,2] [1,1,2] [1,2,1] [2,1,1]五种情况,ways=5
* 当n=5时,有[1,1,1,1,1] [2,2,1] [2,1,2] [1,2,2] [1,1,1,2] [1,1,2,1] [1,2,1,1] [2,1,1,1]八种情况,ways=8
* 当n>3时,n对应的情况数字为n-1和n-2之和。此时,规律正好和斐波那契数列出现的规律对应。
* 斐波拉切数列是这样一个数列:1、1、2、3、5、8、13、21、……在数学上,其被以递归的方法定义:F0=0,F1=1,Fn=F(n-1)+F(n-2)(n>=2)
代码如下:
public class Solution { //用递归超时了 ==+ /*public int climbStairs(int n) { int res = 0;if(n==0) res= 0;if(n==1) res= 1;if(n==2) res= 2;if(n>2) res= climbStairs(n-1)+climbStairs(n-2);return res; }*/ //改用数组 public int climbStairs(int n) { int res[] = new int[n+1];int i=0; for(i=0;i<n+1;i++) {if(i==0) res[i]= 0;if(i==1) res[i]= 1;if(i==2) res[i]= 2;if(i>2)res[i]=res[i-1]+res[i-2]; } return res[n]; }}
0 0
- [Leetcode] Climbing Stairs (Java)
- 【Leetcode】Climbing Stairs JAVA
- [LeetCode][Java] Climbing Stairs
- leetcode:Climbing Stairs 【Java】
- LeetCode Climbing Stairs JAVA
- [LeetCode]Climbing Stairs(Java)
- Leetcode:70. Climbing Stairs(JAVA)
- leetcode-Java-70. Climbing Stairs
- (Java)LeetCode-70. Climbing Stairs
- [LeetCode] 70. Climbing Stairs java
- [leetcode]70. Climbing Stairs(Java)
- LeetCode-70. Climbing Stairs (Java)
- LeetCode: Climbing Stairs
- LeetCode: Climbing Stairs
- [LeetCode]Climbing Stairs
- LeetCode Climbing Stairs
- [Leetcode] Climbing Stairs
- Leetcode: Climbing stairs
- 最原始的sql语句的数据封装
- VMware Workstation利用host-only也可以上网
- What does the distance attribute in DMatches mean?
- Spring框架IOC(控制反转)的核心
- Linux下,Git的初始化
- [LeetCode][Java] Climbing Stairs
- HashMap的工作原理
- MVC struts学习
- Android中Adapter的用法总结
- P124第43题
- java io结构图
- P124第三章T39,40,41,42,43,44,45,46
- HashMap和HashSet 的区别
- Github最流行的10,000个Java项目使用的类库