题目描述:
一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法。
解题思路:
采用递归的方法进行计算,因为只有2种跳台阶的方式,所以最后的结果为这2种方式之和,并且跳到最后只有3种情况(剩1个台阶、2个台阶、小于等于0个台阶),当剩1、2个台阶时直接返回当前台阶数(有这么多走法可以走完)、大于等于属于不满足或表示以前已经加过这种走法了。
具体实现:
public int JumpFloor(int target) {
if(target <= 0) {
return 0;
}
if(target == 1 || target == 2) {
return target;
}
return JumpFloor(target-1) + JumpFloor(target-2);
}