美文网首页
算法题目10:33台阶法

算法题目10:33台阶法

作者: 玲儿珑 | 来源:发表于2021-03-31 23:36 被阅读0次

    实现方式(一):递归法

    function climb(n) {
        if ( n == 1 ) {
            return 1
        } else if (n == 2) {
            return 2
        } else {
            return climb(n-1) + climb(n-2)
        }
    }
    climb(33)
    

    弊端:当n值较大时,算法执行次数过大,会奔溃。

    实现方式二:

    function climb(n) {
        if (n==1) {
            return 1
        } else {
            let fn_2 = 1
            let fn_1 = 2
            for (let i = 3; i < n; i++) {
                let t = fn_1 + fn_2
                fn_2 = fn_1
                fn_1 = t
            }
            return fn_1
        }
    }
    climb(33)
    

    优点:算法时间几乎为0

    相关文章

      网友评论

          本文标题:算法题目10:33台阶法

          本文链接:https://www.haomeiwen.com/subject/qzrzhltx.html