题目描述
一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果)。
示例1
输入
复制
1
返回值
复制
1
示例2
输入
复制
4
返回值
复制
5
public class Solution { public int JumpFloor(int target) { //方法一:递归 326ms 9820KB // if(target==1){ // return 1; // } // if(target==2){ // return 2; // } // return JumpFloor(target-1)+JumpFloor(target-2); //方法二:动态规划 13ms 9668kB if(target==1){ return 1; } if(target==2){ return 2; } int[] ans=new int[target]; ans[0]=1; ans[1]=2; for(int i=2;i<target;i++){ ans[i]=ans[i-1]+ans[i-2]; } return ans[target-1]; } }