天天看点

「数学」斐波那契数列

作者:架构思考
今天要讲解的数学知识与程序员面试密不可分,很多程序员面试都会被问到该知识。

一、定义

斐波那契数列(Fibonacci sequence)又称黄金分割数列,以兔子繁殖为例子而引入,故又称为“兔子数列”。指的是这样一个数列:0、1、1、2、3、5、8、13、21、34、……,这个数列从第 3 项开始,每一项都等于前两项之和。

在数学上,斐波那契数列以如下被以递推的方法定义:F(0)=0,F(1)=1, F(n)=F(n - 1)+F(n - 2)(n ≥ 2,n ∈ N*)。

斐波那契数列的定义者,是意大利数学家莱昂纳多·斐波那契(Leonardo Fibonacci)。生于公元 1170 年,卒于 1250 年,籍贯是比萨。他被人称作“比萨的莱昂纳多”。1202 年,他撰写了《算盘全书》(Liber Abacci)一书。他是第一个研究了印度和阿拉伯数学理论的欧洲人。他的父亲被比萨的一家商业团体聘任为外交领事,派驻地点于阿尔及利亚地区,莱昂纳多因此得以在一个阿拉伯老师的指导下研究数学。他还曾在埃及、叙利亚、希腊、西西里和普罗旺斯等地研究数学,另外斐波纳契还在计算机C语言程序题中应用广泛。

「数学」斐波那契数列

莱昂纳多·斐波那契

二、通项公式

递推公式

如果设 an 为该数列的第 n 项(

「数学」斐波那契数列

),那么这句话可以写成如下形式:

「数学」斐波那契数列

显然这是一个线性递推数列。

通项公式

「数学」斐波那契数列

(如上,又称为“比内公式”,是用无理数表示有理数的一个范例。)

注:此时

「数学」斐波那契数列

⑵ an=[(2/√5+1)-1/(√5+1/2)ⁿ]/√5

通项公式推导

方法一:利用特征方程(线性代数解法)

线性递推数列的特征方程为:

「数学」斐波那契数列

解得

「数学」斐波那契数列

「数学」斐波那契数列
「数学」斐波那契数列
「数学」斐波那契数列

解得

「数学」斐波那契数列
「数学」斐波那契数列

方法二:待定系数法构造等比数列1(初等代数解法)

设常数

「数学」斐波那契数列

使得

「数学」斐波那契数列

「数学」斐波那契数列
「数学」斐波那契数列

时,有:

「数学」斐波那契数列

联立以上

「数学」斐波那契数列

个式子,得:

「数学」斐波那契数列
「数学」斐波那契数列

上式可化简得:

「数学」斐波那契数列

那么:

「数学」斐波那契数列

(这是一个以

「数学」斐波那契数列

为首项、以

「数学」斐波那契数列

为末项、

「数学」斐波那契数列

为公比的等比数列的各项的和)。

「数学」斐波那契数列

, 的解为

「数学」斐波那契数列

「数学」斐波那契数列

方法三:待定系数法构造等比数列(初等代数解法)

「数学」斐波那契数列

「数学」斐波那契数列

构造方程

「数学」斐波那契数列

解得

「数学」斐波那契数列

所以:

「数学」斐波那契数列
「数学」斐波那契数列

由(1)、(2)式得:

「数学」斐波那契数列
「数学」斐波那契数列

令:

「数学」斐波那契数列

化简可得:

「数学」斐波那契数列

方法四:母函数法。

对于斐波那契数列

「数学」斐波那契数列

,有

「数学」斐波那契数列

「数学」斐波那契数列

「数学」斐波那契数列

那么有:

「数学」斐波那契数列

因此

「数学」斐波那契数列

.

不难证明:

「数学」斐波那契数列

因此

「数学」斐波那契数列

再利用展开式

「数学」斐波那契数列

于是就可以得

「数学」斐波那契数列

其中

「数学」斐波那契数列

因此可以得到:

「数学」斐波那契数列

与黄金分割的关系

有趣的是,这样一个完全是自然数的数列,通项公式却是用无理数来表达的。而且当

「数学」斐波那契数列

趋向于无穷大时,前一项与后一项的比值越来越逼近黄金分割0.618(或者说后一项与前一项的比值小数部分越来越逼近 0.618)。

「数学」斐波那契数列

越到后面,

「数学」斐波那契数列

的比值越接近黄金比。

三、应用

生活斐波那契

斐波那契数列中的斐波那契数会经常出现在我们的眼前——比如松果、凤梨、树叶的排列、某些花朵的花瓣数(典型的有向日葵花瓣),蜂巢,蜻蜓翅膀,超越数e(可以推出更多),黄金矩形、黄金分割、等角螺线等。

斐波那契数还可以在植物的叶、枝、茎等排列中发现。例如,在树木的枝干上选一片叶子,记其为数 0,然后依序点数叶子(假定没有折损),直到到达与那些叶子正对的位置,则其间的叶子数多半是斐波那契数。叶子从一个位置到达下一个正对的位置称为一个循回。叶子在一个循回中旋转的圈数也是斐波那契数。在一个循回中叶子数与叶子旋转圈数的比称为叶序(源自希腊词,意即叶子的排列)比。多数的叶序比呈现为斐波那契数的比。

黄金分割

随着数列项数的增加,前一项与后一项之比越来越逼近黄金分割的数值 0.6180339887..…

杨辉三角

将杨辉三角左对齐,成如图所示排列,将同一斜行的数加起来,即得一数列 1、1、2、3、5、8、……

「数学」斐波那契数列

公式表示如下:

「数学」斐波那契数列

矩形面积

斐波那契数列与矩形面积的生成相关,由此可以导出一个斐波那契数列的一个性质。

「数学」斐波那契数列

斐波那契数列前几项的平方和可以看做不同大小的正方形,由于斐波那契的递推公式,它们可以拼成一个大的矩形。这样所有小正方形的面积之和等于大矩形的面积。则可以得到如下的恒等式:

「数学」斐波那契数列

质数数量

斐波那契数列的整除性与质数生成性

每3个连续的数中有且只有一个被 2 整除,

「数学」斐波那契数列

每4个连续的数中有且只有一个被 3 整除,

每5个连续的数中有且只有一个被 5 整除,

每6个连续的数中有且只有一个被 8 整除,

每7个连续的数中有且只有一个被 13 整除,

每8个连续的数中有且只有一个被 21 整除,

每9个连续的数中有且只有一个被 34 整除,

.......

我们看到第5、7、11、13、17、23位分别是质数:5,13,89,233,1597,28657(第19位不是)

斐波那契数列的质数无限多吗?

尾数循环

斐波那契数列的个位数:一个60步的循环

11235,83145,94370,77415,61785,38190,

99875,27965,16730,33695,49325,72910…

进一步,斐波那契数列的最后两位数是一个300步的循环,最后三位数是一个1500步的循环,最后四位数是一个15000步的循环,最后五位数是一个150000步的循环。

自然界中巧合

斐波那契数列在自然科学的其他分支,有许多应用。例如,树木的生长,由于新生的枝条,往往需要一段“休息”时间,供自身生长,而后才能萌发新枝。所以,一株树苗在一段间隔,例如一年,以后长出一条新枝;第二年新枝“休息”,老枝依旧萌发;此后,老枝与“休息”过一年的枝同时萌发,当年生的新枝则次年“休息”。这样,一株树木各个年份的枝桠数,便构成斐波那契数列。这个规律,就是生物学上著名的“鲁德维格定律”。

另外,观察延龄草、野玫瑰、南美血根草、大波斯菊、金凤花、耧斗菜、百合花、蝴蝶花的花瓣,可以发现它们花瓣数目具有斐波那契数:3、5、8、13、21……

「数学」斐波那契数列

其中百合花花瓣数目为 3,梅花 5 瓣,飞燕草 8 瓣,万寿菊 13 瓣,向日葵 21 或 34 瓣,雏菊有 34、55 和 89 三个数目的花瓣。

斐波那契螺旋:具有 13 条顺时针旋转和 21 条逆时针旋转的螺旋的蓟的头部

这些植物懂得斐波那契数列吗?应该并非如此,它们只是按照自然的规律才进化成这样。这似乎是植物排列种子的“优化方式”,它能使所有种子具有差不多的大小却又疏密得当,不至于在圆心处挤了太多的种子而在圆周处却又稀稀拉拉。

叶子的生长方式也是如此,对于许多植物来说,每片叶子从中轴附近生长出来,为了在生长的过程中一直都能最佳地利用空间(要考虑到叶子是一片一片逐渐地生长出来,而不是一下子同时出现的),每片叶子和前一片叶子之间的角度应该是 222.5°,这个角度称为“黄金角度”,因为它和整个圆周 360° 之比是黄金分割数0.618033989……的倒数,而这种生长方式就决定了斐波那契螺旋的产生。向日葵的种子排列形成的斐波那契螺旋有时能达到 89,甚至 144 条。

1992 年,两位法国科学家通过对花瓣形成过程的计算机仿真实验,证实了在系统保持最低能量的状态下,花朵会以斐波那契数列长出花瓣。

数字谜题

三角形的三边关系定理和斐波那契数列的一个联系:

现有长为 144 cm 的铁丝,要截成n小段(n>2),每段的长度不小于 1 cm,如果其中任意三小段都不能拼成三角形,则n的最大值为多少?

分析:由于形成三角形的充要条件是任何两边之和大于第三边,因此不构成三角形的条件就是存在两边之和不超过另一边。截成的铁丝最小为 1,因此可以放 2 个 1,第三条线段就是 2(为了使得n最大,因此要使剩下来的铁丝尽可能长,因此每一条线段总是前面的相邻2段之和),依次为:1、1、2、3、5、8、13、21、34、55,以上各数之和为 143,与 144 相差 1,因此可以取最后一段为 56,这时 n 达到最大为 10。

我们看到,“每段的长度不小于 1”这个条件起了控制全局的作用,正是这个最小数1 产生了斐波那契数列,如果把 1 换成其他数,递推关系保留了,但这个数列消失了。这里,三角形的三边关系定理和斐波那契数列发生了一个联系。

在这个问题中,144>143,这个143是斐波那契数列的前

「数学」斐波那契数列

项和,我们是把144超出143的部分加到最后的一个数上去,如果加到其他数上,就有3条线段可以构成三角形了。

影视作品中的斐波那契数列

斐波那契数列在欧美可谓是尽人皆知,于是在电影这种通俗艺术中也时常出现,比如在风靡一时的《达芬奇密码》里它就作为一个重要的符号和情节线索出现,在《魔法玩具城》里又是在店主招聘会计时随口问的问题。可见此数列就像黄金分割一样流行。可是虽说叫得上名,多数人也就背过前几个数,并没有深入理解研究。在电视剧中也出现斐波那契数列,比如:日剧《考试之神》第五回,义嗣做全国模拟考试题中的最后一道数学题~在FOX 热播美剧《Fringe》中更是无数次引用,甚至作为全剧宣传海报的设计元素之一。

继续阅读