使用递归函数计算斐波那契数列的第n项

定义: 斐波那契数列,指的是这样一个数列:1、1、2、3、5、8、13、21、34…,第一项和第二项为1,从第三项开始,每一项都是前两项之和。

解题思路: 根据斐波那契数列的定义,第n项可以表示为前两项的和,即F(n) = F(n-1) + F(n-2)。同时,第一项和第二项都为1,因此可以设置递归的终止条件为n=1或n=2,直接返回1。其他情况则递归调用函数计算前两项的和。

Python代码:

def fibonacci(n):
    if n == 1 or n == 2:
        return 1
    else:
        return fibonacci(n-1) + fibonacci(n-2)

# 测试用例
print(fibonacci(6)) # 输出 8

代码解释:

  1. fibonacci(n) 函数接受一个整数 n 作为参数,表示要计算的斐波那契数列的第 n 项。
  2. 递归终止条件:当 n 等于 1 或 2 时,直接返回 1。
  3. 递归调用:当 n 大于 2 时,递归调用 fibonacci(n-1)fibonacci(n-2) 函数,并将它们的返回值相加,得到第 n 项的值。

注意: 递归函数在计算斐波那契数列时,存在重复计算的问题,效率较低。在实际应用中,更推荐使用循环或动态规划来计算斐波那契数列。


原文地址: https://www.cveoy.top/t/topic/n3sY 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录