Fibonacci sequence 斐波那契数列解法及分析

版权声明:欢迎转载,但请注明出处,若有什么不对的地方,欢迎指正,https://blog.csdn.net/wutenglong123/article/details/82764585

斐波那契数列(Fibonacci sequence)

斐波那契数列的性质多种多样,截至现在,人么依然没有将之研究透彻,本文就从中选取几个有趣的性质分析。

定义

Fib数列的定义如下:
F ( n ) = { 0 i f   n = 0 1 i f   n = 1 F n − 1 + F n − 2 i f   n ≥ 2 F(n)=\left\{ \begin{aligned} &0 &if\ n=0 \\ &1 &if \ n =1 \\ &F_{n-1}+F_{n-2} &if \ n\ge 2 \end{aligned} \right. F(n)=01Fn1+Fn2if n=0if n=1if n2

1、递归求解Fib:

class solution{
   
public:
	int fib(int n){
   
		if(n == 1)return 0;
		if(n == 2)return 1;
		else return fib(n-1)+fib(n-2);
}

时间复杂度分析:
我们先给出时间复杂度,然后证明。

由递推式:

F n = F n − 1 + F n − 2 F_n = F_{n-1}+F_{n-2} Fn=Fn1+Fn2

则有:

O ( n ) = Ω ( φ n ) O(n) =\Omega(\varphi^n) O(n)=Ω(φn)

其中

φ = 1 + 5 2 \varphi =\frac{1+\sqrt5}{2} φ=21+5 Golden section



证明如下:

由初始条件解二阶齐次差分方程:

F n = F n − 1 + F n − 2 F_n = F_{n-1}+F_{n-2} Fn=Fn1+Fn2 λ 2 − λ − 1 = 0 \lambda^2-\lambda-1=0 λ2<

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值