题目描述
一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法。
题目链接:
分析:
与跳台阶类似,每增加一级台阶,前面各级台阶种数的总和+1(代表跳一次就跳到最高台阶)。
1 : 1
2 : 1 + 1 =2
3 : 1+2+1 =4
4 : 1+2+4+1=8
5 : 1+2+4+8+1=16
……
归纳总结 n: 2^(n-1)
1 public class Solution { 2 int ans =1; 3 public int JumpFloorII(int target) { 4 //return (int)Math.pow(2,target-1); 5 if(target == 1){ 6 return 1; 7 } 8 return JumpFloorII(target - 1)*2; 9 } 10 }