开始使用免费开始使用

斐波那契数列

在本练习中,您将实现无处不在于自然界的斐波那契数列。该数列如下所示:"0, 1, 1, 2, 3, 5, 8…"。您将编写一个生成该数列的递归算法实现。

前两个数是 0 和 1,其余每个数都是前两个数之和。

我们可以将此数列递归地定义为:$fib(n)=fib(n-1)+fib(n-2)$,其中 \(fib(0)=0\) 且 $fib(1)=1$,\(n\) 为数列中的第 \(n\) 个位置。

第一步,使用递归来实现斐波那契。第二步,使用动态规划进行改进,把子问题的解保存在 cache 变量中。

本练习是课程的一部分

Python 中的数据结构与算法

查看课程

交互式实操练习

通过完成这段示例代码来试试这个练习。

def fibonacci(n):
  # Define the base case
  if ____ <= ____:
    return n
  else:
    # Call recursively to fibonacci
    ____
    
print(fibonacci(6))
编辑并运行代码