关于斐波那契数列

本文介绍了斐波那契数列的生成函数及其推导过程,通过构造法证明了斐波那契数列的通项公式,并探讨了数列与黄金分割的关系。此外,还讨论了高效计算斐波那契数列的矩阵乘法方法,降低了时间复杂度。

关于斐波那契数列

  友情提醒:由于本人很蒻,所以文章中的一些推导会有一些不严谨,大家看着就当图个乐qwq。(好像也没人会看这个东西来图个乐哈

一、斐波那契数列的生成函数

  在说这个玩意儿之前,我们先讲一下什么是生成函数。

生成函数即母函数,是组合数学中尤其是计数方面的一个重要理论和工具。最早提出母函数的人是法国数学家LaplaceP.S.在其1812年出版的《概率的分析理论》中明确提出。 生成函数有普通型生成函数和指数型生成函数两种,其中普通型用的比较多。 生成函数的应用简单来说在于研究未知(通项)数列规律,用这种方法在给出递推式的情况下求出数列的通项,生成函数是推导Fibonacci数列的通项公式方法之一。 另外生成函数也广泛应用于编程与算法设计、分析上,运用这种数学方法往往对程序效率与速度有很大改进。

对于任意数列a0,a1,a2…an 即用如下方法与一个函数联系起来:
G ( x ) = a 0 + a 1 x 1 + a 2 x 2 + a 3 x 3 + ⋯ G(x) = a_0 + a_1x^1 + a_2x^2 + a_3x^3+\cdots G(x)=a0+a1x1+a2x2+a3x3+
则称G(x)是数列的生成函数(generating function)。

(以上内容来自百度)
  现在我们知道了生成函数是什么东西,我们就来看一下斐波那契数列的生成函数怎么写。
  众所周知:斐波那契数列的递推式长这样:
f 0 = 0 ,      f 1 = 1 ,      f n = f n − 1 + f n − 2 ( n ≥ 2 ) f_0 = 0, \;\; f_1 = 1,\;\; f_n = f_{n-1} + f_{n-2} (n \geq 2) f0=0,f1=1,fn=fn1+fn2(n2)
  根据生成函数的定义,我们知道斐波那契的生成函数可以写成这样:
F ( x ) = f 0 x 0 + f 1 x 1 + f 2 x 2 + f 3 x 3 + ⋯ F(x) = f_0x^0 + f_1x^1 + f_2x^2 + f_3x^3 + \cdots F(x)=f0x0+f1x1+f2x2+f3x3+
  然后我们再等式两边同时乘上x 和 x 2 x^2 x2,就得到了:
F ( x ) = f 0 x 0 + f 1 x 1 + f 2 x 2 + f 3 x 3 + ⋯    ① x F ( x ) =                    f 0 x 1 + f 1 x 2 + f 2 x 3 + f 3 x 4 + ⋯    ② x 2 F ( x ) =                                      f 0 x 2 + f 1 x 3 + f 2 x 4 + f 3 x 5 + ⋯   ③ \begin{aligned} F(x) = f_0x^0 + f_1x^1 + &f_2x^2 + f_3x^3 + \cdots \qquad \qquad \qquad \,\,① \\ xF(x) = \;\;\;\;\;\;\;\;\;f_0x^1 + &f_1x^2 + f_2x^3 + f_3x^4 + \cdots \qquad \quad \;② \\ x^2F(x) = \;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\; &f_0x^2 + f_1x^3 + f_2x^4 + f_3x^5 + \cdots \,③ \end{aligned} F(x)=f0x0+f1x1+xF(x)=f0x1+x2F(x)=f2x2+f3x3+f1x2+f2x3+f3x4+f0x2+f1x3+f2x4+f3x5+
  由 ① - (② + ③) 得:
( 1 − x − x 2 ) F ( x ) = f 0 x 0 + ( f 1 − f 0 ) x 1 + [ f 2 − ( f 1 + f 0 ) ] x 2 + [ f 3 − ( f 2 + f 1 ) ] x 3 + ⋯ (1-x-x^2)F(x) = f_0x^0 + (f_1 - f_0)x^1 + [f_2 - (f_1+f_0)]x^2 + [f_3-(f_2+f_1)]x^3 + \cdots (1xx2)F(x)=f0x0+(f1f0)x1+[f2(f1+f0)]x2+[f3(f2+f1)]x3+
  又由我们的通项公式得到:
f 0 = 0 ,    f 1 = 1 ,    f 2 − ( f 1 + f 0 ) = 0 ,    f 3 − ( f 1 + f 2 ) = 0 , ⋯ f_0 = 0, \; f_1 = 1, \;f_2 - (f_1+f_0) = 0, \; f_3-(f_1+f_2) = 0, \cdots f0=0,f1=1,f2(f1+f0)=0,f3(f1+f2)=0,
  所以:
( 1 − x − x 2 ) F ( x ) = x → F ( x ) = x 1 − x − x 2 (1-x-x^2)F(x) = x \rightarrow F(x) = \frac{x}{1-x-x^2} (1xx2)F(x)=xF(x)=

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值