09高级跳台阶–剑指offer, java版

09高级跳台阶–剑指offer, java版

题目描述
一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法。
f(1)=1
f(2)=2
f(3)=f(2)+f(1)+1=4 (第一次跳1级;第一次跳2级;第一次跳3级)
f(4)=f(3)+f(2)+f(1)+1=8
f(5)=f(4)+f(3)+f(2)+f(1)+1=16

f(n)=2 * f(n-1)

public class Solution {
    public int JumpFloorII(int target) {
        if(target == 0) return 0;
        if(target == 1) return 1;
        return 2 * JumpFloorII(target-1);
    }
}

你可能感兴趣的:(剑指offer)