Climbing Stairs
来源:互联网 发布:卡祖笛 知乎 编辑:程序博客网 时间:2024/04/27 14:34
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?
递归模式很容易想到,但是超时啦。
class Solution {public: int climbStairs(int n) { if(n<=2){ return n; }else{ return climbStairs(n-1)+climbStairs(n-2); } }};
所以采用非递归方式
class Solution {public: int climbStairs(int n) { if(n<=2){ return n; }else{ int pre1 = 1; int pre2 = 2; for(int i=3;i<=n;i++){ int temp = pre1 + pre2; pre1 = pre2; pre2 = temp; } return pre2; } }};
0 0
- Climbing Stairs
- Climbing Stairs
- Climbing Stairs
- Climbing Stairs
- Climbing Stairs
- Climbing Stairs
- Climbing Stairs
- Climbing Stairs
- Climbing Stairs
- Climbing Stairs
- Climbing Stairs
- Climbing Stairs
- Climbing Stairs
- Climbing Stairs
- Climbing Stairs
- Climbing Stairs
- Climbing Stairs
- Climbing Stairs
- 【Leetcode】Find the Duplicate Number
- 如何从官网下载最新的jdk API
- How to use NQ logs to check data in DB
- 如何正确获得Android内外SD卡路径
- [转载文章] 解析漏洞总结
- Climbing Stairs
- MapReduce性能优化_2. 诊断 Map 端性能瓶颈
- 【转】shell awk 入门
- ios创建的sqlite数据库文件如何从ios模拟器中导出
- ios应用内支付过程(使用苹果原生支付方式
- socket通信二
- “按需加载”的应用
- c++ primer plus 第六章变成练习 第一题
- 那些史上留名的软件 bug 们