阅读以下说明和C函数代码,回答问题并将解答写在对应栏内。
【说明】
著名的菲波那契数列定义式为
f1=1 f2=1 fn=fn-1+fn-2 (n=3,4,…)
因此,从第1项开始的该数列为1,1,2,3,5,8,13,21,…。函数fibl和fib2分别用递归方式和迭代方式求解菲波那契数列的第n项(调用fib1、fib2时可确保参数n获得一个正整数)。
【C函数代码】
函数fib1和fib2存在错误,只需分别修改其中的一行代码即可改正错误。
(1)函数fib1不能通过编译,请写出fib1中错误所在行修改正确后的完整代码。
(2)函数fib2在n≤2时不能获得正确结果,请写出fib2中错误所在行修改正确后的完整代码。
第1题:
第2题:
请编写Python程序完成以下要求: 编写函数,求斐波那契数列第n项的值,F1=1,F2=1,Fn=Fn-1+Fn-2。
第3题:
斐波那契数列FN的定义为:F0=0, F1=1, FN=FN−1+FN−2, N=2, 3, …。用递归函数计算FN的空间复杂度是O(N)。
第4题:
斐波那契数列FN的定义为:F0=0, F1=1, FN=FN−1+FN−2, N=2, 3, …。用递归函数计算FN的时间复杂度是O(N!)。
第5题:
请编写Python程序完成以下要求: 编写函数,求斐波那契数列第n项的值,F0=1,F1=1,Fn=Fn-1+Fn-2。 提示:此题没有太大难度,只需要按照通项公式构造函数即可;需要注意的是:函数中需要对n=0和n=1这两种情况做特殊处理。 (得分点提示:程序的可读性、功能是否正确)