斐波那契数列的Python实现

Posted chenzhen0530

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了斐波那契数列的Python实现相关的知识,希望对你有一定的参考价值。

? 斐波那契数列的Python实现:递归实现、非递归实现、斐波那契数列生成器;
\[ \begin{equation} F(n)= \begin{cases} n & n=0, 1\F(n-1) + F(n-2) & n > 1 \end{cases} \end{equation} \]


递归实现:

# python
def fib(n):
    if n <= 1:
        return n
    else:
        return fib(n-1) + fib(n-2)

非递归实现:

# python
def fib(n):
    if n <= 1:
        return n
    else:
        f1, f2, c = 0, 1, 0
        for i range(n-1):
            c = f1 + f2
            f1, f2 = f2, c
        return c

斐波那契数列生成器:

# python
def fib(n):
    a, b, iter = 1, 0, -1
    while iter < n:
        yield b
       # print(b)
        a, b = b, a+b
        iter += 1
for f in fib(10):
    print(f)

以上是关于斐波那契数列的Python实现的主要内容,如果未能解决你的问题,请参考以下文章

python实现斐波那契数列(Fibonacci sequence)

python实现斐波那契数列

Python实现斐波那契数列的方法以及优化

Python手动编程实现斐波那契数列

斐波那契数列(C++ 和 Python 实现)

编写一递归函数求斐波那契数列的前40项