面试题答案
一键面试def fibonacci(n):
def inner_fib(a, b, count):
if count == 0:
return []
elif count == 1:
return [a]
else:
return [a] + inner_fib(b, a + b, count - 1)
return inner_fib(0, 1, n)
你可以使用以下方式调用这个函数:
# 获取长度为10的斐波那契数列
result = fibonacci(10)
print(result)
上述代码通过递归的方式实现了斐波那契数列的生成。fibonacci
函数接受一个参数 n
表示要生成的斐波那契数列的长度。inner_fib
是内部递归函数,用于实际的计算。初始时,a
为0,b
为1,通过递归不断计算下一个斐波那契数,并构建列表。