剑指offer(8)跳台阶

(19.1.3)

剑指offer(8)跳台阶

今天起床晚了忘记去上复习课了,太冷了,算了还是做题吧。

题目描述
一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果)。

一开始我也没什么思路,后来动笔画了画发现这题就是找规律,是斐波那契数列,从3开始就是a3 = a2+a1了。

则可以写出简单的代码:

function jumpFloor(number)
{
   if(number == 1 || number == 0 ||number == 2) {
       return number;
   }
   var one = 1;
   var two = 2;
   var num;
   for(var i = 3; i<=number; ++i)
   {
       num = one + two;
       one = two;
       two =num;
   }
   return two;
}

console.log(jumpFloor(4));

从下往上运算会快点

你可能感兴趣的:(牛客剑指offer)