[leetcode] 70. Climbing Stairs

原创 2016年06月02日 12:16:29

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?

Solution 1

idea: recursive function, however, run out of limit time

class Solution {
public:
    int climbStairs(int n) {
        if (n==1)
            return 1;
        else if (n==2)
            return 2;
        else
            return climbStairs(n-1)+climbStairs(n-2);
    }
};

Solution 2

idea: similar to Fibonacci number

class Solution {
public:
    int climbStairs(int n) {
        if (n==1)
            return 1;
        else if (n==2)
            return 2;
        else{
            int ppre = 1;
            int pre = 2;
            for (int i = 3; i < n; i++){
                int tmp = pre;
                pre = ppre+pre;
                ppre = tmp;
            }
            return pre+ppre;
        }
        
    }
};



版权声明:本文为博主原创文章,未经博主允许不得转载。

LeetCode Climbing Stairs 递归求解和动态规划法

简单题目,相当于fibonacci数列问题,难点就是要会思维转换,转换成为递归求解问题,多训练就可以了。 所以这种类型的题目相对于没有形成递归逻辑思维的人来说,应该算是难题。 我的想法是: 每次有两种...
  • kenden23
  • kenden23
  • 2013年12月21日 08:13
  • 17230

【LeetCode-面试算法经典-Java实现】【073-Climbing Stairs(爬楼梯)】

【070-Climbing Stairs(爬楼梯)】【LeetCode-面试算法经典-Java实现】【所有题目目录索引】原题  You are climbing a stair case. It ta...
  • DERRANTCM
  • DERRANTCM
  • 2015年08月03日 07:16
  • 2666

LeetCode Climbing Stairs 递归求解和动态规划法

分类: Algorithm算法 2013-12-21 08:13 4154人阅读 评论(2) 收藏 举报 LeetCodeClimbing Stairs递归求解动态规划法 ...
  • jfkidear
  • jfkidear
  • 2014年12月17日 22:04
  • 2066

LeetCode 70 Climbing Stairs(爬楼梯)(动态规划)(*)

翻译你正在爬一个楼梯。它需要n步才能到底顶部。每次你可以爬1步或者2两步。那么你有多少种不同的方法爬到顶部呢?原文You are climbing a stair case. It takes n s...
  • NoMasp
  • NoMasp
  • 2016年01月14日 07:12
  • 4429

Leetcode 70. Climbing Stairs

You are climbing a stair case. It takes n steps to reach to the top.Each time you can either climb 1...
  • xinqrs01
  • xinqrs01
  • 2017年01月31日 04:57
  • 244

[LeetCode]70.Climbing Stairs

【题目】 You are climbing a stair case. It takes n steps to reach to the top. Each time you can eithe...
  • SunnyYoona
  • SunnyYoona
  • 2014年01月23日 13:14
  • 2748

leetcode之70. Climbing Stairs(C++解法 动态规划思想)

原题: You are climbing a stair case. It takes n steps to reach to the top.Each time you can either cl...
  • haimianxiaodao
  • haimianxiaodao
  • 2016年09月21日 15:19
  • 317

LeetCode【70】Climbing Stairs

根据题目找规律,见下表策略选择          分析:斐波那契数列的变形           1 1 2 3 5 8 ……           本题将第二个数字1换成数字2,形成新的相同...
  • Android_DEPON
  • Android_DEPON
  • 2017年06月23日 10:52
  • 213

LeetCode70. Climbing Stairs题解

You are climbing a stair case. It takes n steps to reach to the top.Each time you can either climb 1...
  • lby0910
  • lby0910
  • 2017年05月05日 12:41
  • 221

【LeetCode】No.70 Climbing Stairs

【原题】 Given an array of integers, find two numbers such that they add up to a specific target number...
  • myangel_xy
  • myangel_xy
  • 2017年02月25日 23:42
  • 180
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:[leetcode] 70. Climbing Stairs
举报原因:
原因补充:

(最多只允许输入30个字)