斐波那契数列FN的定义为:F0=0,F1=1,FN=FN−1+FN−2,N=2,3,…。用递归函数计算FN的时间复杂度是O(N!)。
举一反三
- 斐波那契数列Fn定义如下:F0=0,F1=1,Fn=Fn-1+Fn-2,n=2,3,…请就此斐波那契数列回答下列问题:(1)在递归计算Fn时,需要对较小的Fn-1,Fn-2,…,F1,Fn精确计算多少次?(2)如果用大O表示法,试给出递归计算Fn时,递归函数的时间复杂度为多少?
- 假设有递推公式[img=221x28]1803c461186b13b.png[/img],用f n 表示[img=18x17]1803c4612097439.png[/img],下面哪个定义是正确的? A: f::Int-Int f0=1 fn=f(n-1)^2+2*f(n-2) B: f::Int-Int f0=1 f1=2 fn=(f(n-1))^2+2*f(n-2) C: f::Int-Int f0=1 fn=f(n-1)^2+2f(n-2) D: f::Int-Int f0=1 f1=2 fn=(f(n-1))^2+2(f(n-2))
- 斐波那契数列的通项公式为: F1=F2=1 Fn=Fn-1+Fn-3 n=3、4、5……
- 已知一窗体中有如下函数过程和一命令按钮Command1,则单击Command1时,输出结果为。 Public Function Fn(n) If n = 0 Then Fn = 1 Else Fn = Fn(n - 1) * n End Function Private Sub Command1_Click() Print Fn(6) End Sub
- 若数列Fn满足F1=F2=1,Fn=Fn-1+Fn-2,则F8=()