使用python实现斐波那契数列(黄金分割数列)方法二
指的是这样一个数列:0、1、1、2、3、5、8、13、21、34、……。
解法二:递归
def fib2(n):
if n == 1 or n == 2:
return 1
return fib2(n - 1) + fib2(n - 2)
代码详解:
当调用fib2(5)时,内部是这样运行的:
输入的5>1,2 返回fib2(4)+fib2(3)
此时的fib2(5)=fib2(4)+fib(3)=fib2(3)+fib2(2) + fib2(2)+fib2(1)
=fib2(2)+fib2(1)+fib2(2) + fib2(2)+fib2(1)
fib2(2)与fib2(1)的值为1
这个方法自己会调用自己,而当调用自己时参数会减小,直到达到自己设定的固定值。
本文介绍了一种使用递归方法来计算斐波那契数列的方法。通过逐步分解问题,最终将复杂的问题简化为最基础的情况进行求解。这种方法虽然简单直观,但随着数列长度的增长,其计算效率会逐渐降低。

被折叠的 条评论
为什么被折叠?



