python 递推复习
时间: 2023-06-13 07:08:30 浏览: 110
递推是一种使用已知条件来推导出未知条件的算法。在Python中,递推可以通过循环实现。
例如,斐波那契数列是一个常见的递推问题,其递推公式为:
F(n) = F(n-1) + F(n-2),其中 F(0) = 0,F(1) = 1
可以使用循环来实现斐波那契数列:
```python
def fibonacci(n):
if n == 0:
return 0
elif n == 1:
return 1
else:
fib_1 = 0
fib_2 = 1
for i in range(2, n+1):
fib = fib_1 + fib_2
fib_1 = fib_2
fib_2 = fib
return fib
```
在这个例子中,我们使用了循环来计算斐波那契数列的第n个数字。我们使用两个变量fib_1和fib_2来保存前两个数字,并在循环中更新它们,直到我们计算出所需的数字。
还有其他的递推问题,例如阶乘的递推公式为:
n! = n * (n-1) * (n-2) * ... * 1
可以使用循环来实现阶乘:
```python
def factorial(n):
if n == 0:
return 1
else:
result = 1
for i in range(1, n+1):
result *= i
return result
```
在这个例子中,我们使用循环来计算n的阶乘。我们从1开始循环,每次将i乘以结果,直到我们计算出n的阶乘。
递推是一种常见的算法,可以用于解决许多问题。在Python中,我们可以使用循环来实现递推算法。
阅读全文