19、一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法。

一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法。

思路:

对于第n个台阶来说,只能从n-1或者n-2的台阶跳上来,所以
F(n) = F(n-1) + F(n-2)
斐波拉契数序列,初始条件
n=1:只能一种方法
n=2:两种
 
 1 class Solution {
 2 public:
 3     int jumpFloor(int number) {
 4         int one=1;
 5         int two=2;
 6         while(--number){
 7             two+=one;
 8             one=two-one;
 9         }
10         return one;
11     }
12 };

原文地址:https://www.cnblogs.com/olivegyr/p/7017814.html