递归求fabonacci数列python
时间: 2023-04-18 11:04:21 浏览: 82
当然可以,以下是 Python 代码实现 Fibonacci 数列的递归方法:
```python
def fibonacci(n):
if n <= 1:
return n
else:
return fibonacci(n-1) + fibonacci(n-2)
```
以上代码中,`fibonacci(n)` 函数接受一个正整数 `n` 作为参数,然后通过递归的方式计算 Fibonacci 数列中第 `n` 个数字。当 `n` 为 0 或 1 时,直接返回 `n`,否则将 `fibonacci(n-1)` 和 `fibonacci(n-2)` 的结果相加,得到第 `n` 个 Fibonacci 数字。
相关问题
python函数:递归求Fibonacci数列
下面是一个递归求解 Fibonacci 数列的 Python 函数:
```python
def fibonacci(n):
if n <= 1:
return n
else:
return fibonacci(n-1) + fibonacci(n-2)
```
当 `n` 是 0 或 1 时,Fibonacci 数列的第 `n` 项就是 `n`。否则,第 `n` 项就等于前两项的和,也就是第 `n-1` 项和第 `n-2` 项的和。
这个函数虽然简单易懂,但它存在一个严重的问题:它的时间复杂度随着输入的增加呈指数级增长,因为每次调用函数都会导致两个更小的 Fibonacci 数列被递归地计算。因此,对于比较大的 `n`,这个函数的执行效率会非常低下。
python递归求斐波那契数列的代码
好的,以下是Python中递归求解斐波那契数列的代码:
```python
def fibonacci(n):
if n <= 1:
return n
else:
return (fibonacci(n-1) + fibonacci(n-2))
# 测试
for i in range(10):
print(fibonacci(i))
```
这里的 `fibonacci` 函数接收一个整数参数 `n`,表示要求解的斐波那契数列的第 `n` 项。如果 `n` 小于等于 1,直接返回 `n` 。否则,递归求解 `n-1` 和 `n-2` 两项的和。