美文网首页
python--台阶问题/斐波那契

python--台阶问题/斐波那契

作者: 阳光小镇少爷 | 来源:发表于2023-05-05 15:51 被阅读0次

一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法。

fib = lambda n: n if n <= 2 else fib(n - 1) + fib(n - 2)

第二种记忆方法

def memo(func):
    cache = {}
    def wrap(*args):
        if args not in cache:
            cache[args] = func(*args)
        return cache[args]
    return wrap

@memo
def fib(i):
    if i < 2:
        return 1
    return fib(i-1) + fib(i-2)

第三种方法

def fib(n):
    a, b = 0, 1
    for _ in xrange(n):
        a, b = b, a + b
    return b

变态台阶问题

一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法。

fib = lambda n: n if n < 2 else 2 * fib(n - 1)

相关文章

  • 2、斐波那契数列求第n位数值

    斐波那契数列 什么是斐波那契数列? 非递归实现 递归实现 其他斐波那契数列问题 跳台阶问题:一只青蛙一次可以跳上1...

  • 台阶问题/斐波那契

    问题:一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法。 衍生问题:一只青...

  • 如果说每天都在处理昨天和前天产生的Bug,那么是一个什么类型的程

    斐波那契程序员。具体参考斐波那契数列。 斐波那契数列

  • 递归和动态规划大总结

    斐波那契系列问题的递归和动态规划 题目一:返回斐波那契数列的第N项 题目二:给定整数N,代表台阶数,一次可以跨2个...

  • 10.斐波那契数列 与 跳台阶问题

    1.斐波那契数列问题 题目:求斐波那契数列的第n项 写一个函数,输入n,求斐波那契(Fibonacci)数列的第n...

  • Java常见算法整理

    兔子问题(斐波那契数列规律) 台阶问题 (兔子问题变种,递归规律) 素数问题(判断素数、质数方式) 水仙花数问题(...

  • 递推算法思想

    递推之顺推法解决“斐波那契数列”问题 Q :斐波那契数列因数学家列昂纳多·斐波那契以兔子为例子引入,又名“兔子数列...

  • 31.台阶问题/斐波那契

    一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法。 第二种记忆方法 第三种方法

  • Python实现斐波那契数列

    什么是斐波那契数 斐波那契数,亦称之为斐波那契数列(意大利语: Successione di Fibonacci)...

  • 10:斐波那契数列

    题目10:斐波那契数列 斐波那契数,亦称之为斐波那契数列(意大利语: Successione di Fibonac...

网友评论

      本文标题:python--台阶问题/斐波那契

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