一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果)。

题目描述

一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果)。

/*
思路:递归,斐波那契数列
最后一步只能跳1级或两级,
若跳1级则最后一步之前走了number-1级,
若跳2级则最后一步之前走了number-2级,
所以有:jumpFloor(number) = jumpFloor(number-1) + jumpFloor(number -2)
这显然是一个斐波那契数列。
*/

class Solution {
public:
    int jumpFloor(int number) {
        if(number<=1)
            return 1;
        return jumpFloor(number-1) + jumpFloor(number -2);
    }
};

猜你喜欢

转载自blog.csdn.net/weixin_40271182/article/details/84613924