python斐波那契非递归算法
时间: 2023-10-31 22:59:37 浏览: 149
python实现斐波那契递归函数的方法
5星 · 资源好评率100%
斐波那契数列是一个由兔子繁殖引入的数列,从第三个数开始,后面的数是前两个数的和。在Python中,我们可以使用非递归算法来计算斐波那契数列的第n项。以下是一个示例代码:
```python
def fibonacci_nonrecursive(n):
if n == 0:
return 0
elif n == 1:
return 1
else:
prev_prev = 0
prev = 1
for i in range(2, n+1):
current = prev + prev_prev
prev_prev = prev
prev = current
return current
n = int(input("请输入要计算的斐波那契数列的项数:"))
result = fibonacci_nonrecursive(n)
print("第%d项的斐波那契数为:%d" % (n, result))
```
在这个非递归算法中,我们使用两个变量prev_prev和prev来保存前两个斐波那契数列的值,然后通过一个循环来计算第n项的值。当n等于0时,返回0;当n等于1时,返回1;否则,根据斐波那契数列的定义,计算第n项的值。最后,我们通过输入一个数n来调用这个函数,并输出计算结果。
通过这个非递归算法,我们可以快速计算出斐波那契数列的第n项,而不需要进行递归调用,从而提高了计算效率。
阅读全文