【发布时间】:2017-03-05 18:39:33
【问题描述】:
我正在尝试创建一个允许用户输入数字的函数,结果将是一个列表,其中包含直到输入的斐波那契数字,如果输入不在系列中,则包含上面的一个。例如,4 的输入将返回[0, 1, 1, 2, 3, 5],但3 的输入将返回[0, 1, 1, 2, 3]。我已经设法使用以下功能做到这一点:
def fibonacci(n):
series = [0]
if (n == 0):
pass
else:
series.append(1)
if (n == 1):
pass
else:
while(series[len(series)-1] < n):
newValue = series[len(series)-1] + series[len(series)-2]
series.append(newValue)
print(series)
但是,我现在希望能够递归地执行此操作,有什么想法吗?
【问题讨论】:
-
递归斐波那契写起来很简单,你的尝试在哪里?
-
没有记忆,递归斐波那契在你达到第 50 个斐波那契数之前变得不可行。
标签: python list recursion fibonacci