题目描述
一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果)。
思路描述
考虑要跳到n级的话,就只有两种可能,最后一步跳1级,或者跳2级,这两种情况要叠加,而我们递归结束需要知道number的第一位和第二位能返回什么样的值,同样也是返回1,2,定义初始条件即可
代码描述
class Solution {
public:
int jumpFloor(int number) {
if (number==1) return 1;
if (number==2) return 2;
return jumpFloor(number-1)+jumpFloor(number-2);
}
};