题目:一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果)。
分析:使用递归可以很简单的解决该问题。
一级台阶,只有一种跳法;两级台阶,则有两种跳法。此为递归结束的条件。
实现:
/**
* 跳台阶,一次可以跳一阶也可以跳两阶
* @param target 台阶的总数
* @return
*/
public static int JumpFloor(int target){
if(target == 1){
return 1;
}
if(target == 2){
return 2;
}
return JumpFloor(target-1)+JumpFloor(target-2);
}