📌  相关文章
📜  在系列1、1、2、6、24 …中找到N个项(1)

📅  最后修改于: 2023-12-03 15:37:45.389000             🧑  作者: Mango

在斐波那契数列中找到N个项

介绍

斐波那契数列是一个非常著名的数列,它的规律是从第3项开始,每一项都是前两项的和,即:1、1、2、3、5、8、13、21、34、55、89、144...

功能

编写一个函数,可以在斐波那契数列中找到N个项,并返回一个列表。

算法

由于斐波那契数列的规律非常简单,我们可以使用循环生成这个数列。具体的算法如下:

def fibonacci(n):
    if n <= 0:
        return []
    elif n == 1:
        return [1]
    elif n == 2:
        return [1, 1]
    else:
        fibs = [1, 1]
        for i in range(2, n):
            fibs.append(fibs[-1] + fibs[-2])
        return fibs

我们从2开始循环,因为前两项是1,1。

循环的次数是需要找到的项数N-2次,因为前两项已经在列表中了。

每次循环时,将前两项的和添加到列表中,并更新前两项的值。

使用方法

调用上述函数即可,例如:

result = fibonacci(10)
print(result)

输出结果为

[1, 1, 2, 3, 5, 8, 13, 21, 34, 55]
总结

使用循环的方法可以很方便地生成斐波那契数列,这个方法的时间复杂度是O(N),非常高效。