码迷,mamicode.com
首页 > 编程语言 > 详细

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

时间:2019-02-28 10:34:06      阅读:298      评论:0      收藏:0      [点我收藏+]

标签:java   return   div   style   斐波那契数   item   class   color   desc   

题目描述

一只青蛙一次可以跳上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实现)

标签:java   return   div   style   斐波那契数   item   class   color   desc   

原文地址:https://www.cnblogs.com/manru75/p/10448575.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!