一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法。
思路:第n阶只能是从第n-1阶或从第n-2阶跳上来的。
public class Solution {
/*采用递归,时间耗时过多,于是考虑迭代解决*/
public int JumpFloor(int target) {
if(target<0){
return -1;
}
if(target==1){
return 1;
}
if(target==2){
return 2;
}
int one=1,two=2,result=0;
for(int i=3;i<=target;i++){
result=one+two;
one=two;
two=result;
}
return result;
}
}