LeetCode 70. Climbing Stairs

1.题目:
https://leetcode.com/problems/climbing-stairs/description/

-----------------------------------------------------------------------------------------------------------
2.大意:

有n级台阶,从最底层出发,每次只能跨一步或者两步,求问跨到顶层总共有多少种方法

----------------------------------------------------------------------------------------------------------
3.思路:
找出递归关系,到达n级台阶等于在n-1级台阶处跨一步或者n-2级台阶处跨两步,
也即n级台阶的方法=n-1级台阶的方法+n-2级台阶方法
--------------------------------------------------------------------------------------------------------
4.代码:
class Solution {
public:
    int climbStairs(int n) {
        int f[10000],i;
        f[0]=1;
        f[1]=1;
        for(i=2;i<=n;i++)
        {
            f[i]=f[i-1]+f[i-2];  //利用递推关系,n级台阶方法等于n-1级台阶方法+n-2级台阶方法
        }
       return f[n]; 
    }
};

猜你喜欢

转载自blog.csdn.net/liangwgl/article/details/79847887