每个台阶有跳与不跳两种选择,最后一级必须存在
变态跳台阶
http://www.nowcoder.com/questionTerminal/22243d016f6b47f2a6928b4313c85387
数学法,跳与不跳。2^(n-1).
递归:f(n)=2f(n-1),初始条件:target==1,n=1;
/**
* 一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。
* 求该青蛙跳上一个n级的台阶总共有多少种跳法。
* @param target n级
* @return 跳法总数
*/
public int JumpFloorII(int target) {
// f(n) = 2*f(n-1)
if (target<=0){
return -1;
}else if(target==1){
return 1;
}
return 2*JumpFloorII(target-1);
}
