剑指offer(8)跳台阶

题目描述:

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

解题代码:

function jumpFloor(number)
{
    // write code here
    //跳台阶问题是斐波那契数列的一个形式转换,要跳上n级台阶
    //如果第一步跳1级,剩下台阶的跳法即为跳上n-1级台阶的跳法
    //如果第一步跳2级,剩下台阶的跳法即为跳上n-2级台阶的跳法
    if(number <= 2){
        return number;
    }
    var prepre = 1;
    var pre = 2;
    var now = 0;
    for(var i = 3;i <= number;i++){
        now = prepre + pre;
        prepre = pre;
        pre = now;
    }
    return now;
}

 

posted @ 2018-09-04 22:49  叶子叶子耶  阅读(106)  评论(0编辑  收藏  举报