题目
一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果)。
思路
- n=1时,只有1种跳法
- n=2时,只有2种跳法
- n=3时,只有3种跳法
- n=4时,只有5种跳法
- ···· ·····
- 当n=n时,只有f(n-1)+f(n-2)种跳法,满足斐波那契数列
代码
1public class Solution {
2 public int JumpFloor(int target) {
3 if(target == 1)
4 return 1;
5 if(target == 2)
6 return 2;
7 int a = 1;
8 int b = 2;
9 int sum = a + b;
10 for(int i=3;i<=target;i++)
11 {
12 sum = a + b;
13 a = b;
14 b = sum;
15 }
16 return sum;
17 }
18}