欢迎访问宙启技术站
智能推送

使用Python实现斐波那契数列

发布时间:2023-12-04 10:16:02

斐波那契数列指的是这样一个数列:0、1、1、2、3、5、8、13、21、34、…

即每一项都是前两项的和,并且 项和第二项分别为0和1。

Python中可以使用循环或递归的方式实现斐波那契数列。

1. 使用循环实现斐波那契数列:

def fibonacci(n):
    # 初始条件
    fib_list = [0, 1]
    if n == 0:
        return []
    elif n == 1:
        return [0]
    
    # 生成斐波那契数列
    while len(fib_list) < n:
        fib_list.append(fib_list[-1] + fib_list[-2])
    
    return fib_list

# 使用例子
fib_list = fibonacci(10)
print(fib_list)

运行结果:

[0, 1, 1, 2, 3, 5, 8, 13, 21, 34]

2. 使用递归实现斐波那契数列:

def fibonacci(n):
    # 递归终止条件
    if n == 0:
        return []
    elif n == 1:
        return [0]
    elif n == 2:
        return [0, 1]
    
    # 递归生成斐波那契数列
    fib_list = fibonacci(n-1)
    fib_list.append(fib_list[-1] + fib_list[-2])
    
    return fib_list

# 使用例子
fib_list = fibonacci(10)
print(fib_list)

运行结果:

[0, 1, 1, 2, 3, 5, 8, 13, 21, 34]

无论是使用循环还是使用递归,以上代码都可以生成斐波那契数列的前n项。使用循环的实现方式效率较高,而使用递归的实现方式可以更直观地体现斐波那契数列的定义。根据实际需求和数据规模,选择合适的方式实现斐波那契数列。