一次可以跳上1级台阶,也可以跳上2级。求跳上一个n级的台阶总共有多少种跳法
class Solution {
public int JumpFloor(int target) {
int before1 = 1, before2 = 1, sum = 1;
for(int i = 2; i <= target; i++){
sum = before1 + before2;
before2 = before1;
before1 = sum;
}
return sum;
}
}
一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求跳上一个n级的台阶总共有多少种跳法。
public class Solution {
public int JumpFloorII(int target) {
return 1<<(target - 1);
}
}