問題描述:一只青蛙一次可以跳上1級台階,也可以跳上2級。求該青蛙跳上一個n級的台階總共有多少種跳法。
思路:可能出現的情況:(1) n=1 ,一種方法 ;(2)n=2,兩種方法;(3)對於第n階,只能從第n-1階或者n-2階跳上,所以得出結論:
| 1, (n=1)
f(n) = | 2, (n=2)
| f(n-1)+f(n-2) ,(n>2,n為整數)具體代碼:
public static void main(String[] args) {
int a =20;//測試數據
System.out.println(JumpFloor(a));
}
public static int JumpFloor(int target) {
if(target <= 0){
return 0;
}else if(target ==1){
return 1;
}else if(target ==2){
return 2;
}else
return JumpFloor(target -1)+JumpFloor(target-2);
}