Python递归函数的例子
时间: 2023-06-04 17:02:29 浏览: 80
好的,可以举个例子。比如计算斐波那契数列的第n项,可以使用递归函数实现:
```python
def fibonacci(n):
if n == 0:
return 0
elif n == 1:
return 1
else:
return fibonacci(n-1) + fibonacci(n-2)
```
这个函数会在计算fibonacci(n)时递归调用fibonacci(n-1)和fibonacci(n-2),直到n为0或1时返回相应的值。
相关问题
递归函数例子python
递归函数是指在函数的定义中调用函数本身的函数。下面是三个Python递归函数的例子:
1. 求阶乘的递归函数
def recursion(n):
if n == 1:
return 1
else:
return n * recursion(n-1)
这个函数通过调用自身来计算n的阶乘。
2. 求斐波那契数列的递归函数
def recursion(n):
if n == 0:
return 0
elif n == 1:
return 1
else:
return recursion(n-1) + recursion(n-2)
这个函数通过调用自身来计算斐波那契数列的第n项。
3. 汉诺塔问题的递归函数
def hanoi(n, A, B, C):
if n == 1:
print(A, "->", C)
else:
hanoi(n-1, A, C, B)
print(A, "->", C)
hanoi(n-1, B, A, C)
这个函数通过调用自身来解决汉诺塔问题,即将n个盘子从A柱移动到C柱,其中B柱作为辅助。
python 递归函数
Python递归函数是指在函数定义中调用函数本身的过程。递归函数通常用于解决可以分解为较小相似子问题的问题。下面是一个示例递归函数来计算一个数字的阶乘:
```python
def factorial(n):
if n == 0 or n == 1:
return 1
else:
return n * factorial(n-1)
```
在这个例子中,递归函数`factorial`首先检查`n`是否为0或1,如果是,则返回1作为基本情况。否则,它通过调用自身来计算`n`的阶乘,其中递归调用的参数为`n-1`。
请注意,在使用递归函数时,确保设置适当的终止条件,以避免无限递归。