JavaScript算法系列之-----------------跳台阶(JS实现)

Posted 灭世的蜜糖

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JavaScript算法系列之-----------------跳台阶(JS实现)相关的知识,希望对你有一定的参考价值。

题目描述

一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果)。
 
思路:
(1)跳一级台阶 : 
                                    1             一种
(2)跳二级台阶 :   
                                    11/2        两种
(3)跳三级台阶 :   
                                    先跳一级还有两级台阶同情况(2)  记作=>    1 (2)
                                    先跳两级还有一级台阶同情况(1)  记作=>    2 (1)
                                    把这两种情况加起来就是跳三级台阶的一共可能
                                    (2)+(1)
(4)跳四级台阶 :   
                                    先跳一级还有三级台阶同情况(3)  记作=>    1 (3)
                                    先跳两级还有两级台阶同情况(2)  记作=>    2 (2)
                                    把这两种情况加起来就是跳四级台阶的一共可能
                                    (3)+(2)
(5)跳五级台阶 :   
                                    先跳一级还有四级台阶同情况(4)  记作=>    1 (4)
                                    先跳两级还有三级台阶同情况(3)  记作=>    2 (3)
                                    把这两种情况加起来就是跳五级台阶的一共可能
                                    (4)+(3)
 
...
 
以此类推
 
是不是感觉很眼熟,像不像斐波那契数列
所以可以用递归循环实现
 
递归代码如下:
function jumpFloor(number)
{
    if(number === 1){
        return 1
    }
    if(number === 2){
        return 2
    }
    if(number > 2){
        return jumpFloor(number-1)+jumpFloor(number-2)
    }
}

 

循环的自行实现或去斐波那契数列那章看吧

 
 
                                    
                                   
 

以上是关于JavaScript算法系列之-----------------跳台阶(JS实现)的主要内容,如果未能解决你的问题,请参考以下文章

JavaScript Python JavaGo算法系列之快速排序篇

JavaScript Python JavaGo算法系列之快速排序篇

JavaScript算法 ,Python算法,Go算法,java算法,系列之归并排序篇

JavaScript算法 ,Python算法,Go算法,java算法,系列之归并排序篇

算法系列之--Javascript和Kotlin的插入算法(原)

算法系列之--Javascript和Kotlin的选择算法(原)