斐波那契數列
費波那西數列(意大利语: Successione di Fibonacci),又譯費波拿契數、斐波那契數列、費氏數列、黃金分割數列。
用文字來說,就是費波那西數列由 0 和 1 開始,之後的費波那西系數就由之前的兩數相加。首幾個費波那西系數是(OEIS A000045):
0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987, 1597, 2584, 4181, 6765, 10946,………………
特別指出:0不是第一項,而是第零項。
目录 |
源起 [编辑]
根據高德納(Donald Ervin Knuth)的《計算機程序設計藝術》(The Art of Computer Programming),1150年印度數學家Gopala和金月在研究箱子包裝物件長闊剛好為 1 和 2 的可行方法數目時,首先描述這個數列。 在西方,最先研究這個數列的人是比薩的李奧納多(又名費波那西),他描述兔子生長的數目時用上了這數列。
- 第一個月初有一對剛誕生的兔子
- 第二個月之後(第三個月初)牠們可以生育
- 每月每對可生育的兔子會誕生下一對新兔子
- 兔子永不死去
假設在 n 月有可生育的兔子總共 a 對,n+1 月就總共有 b 對。在 n+2 月必定總共有 a+b 對: 因為在 n+2 月的時候,前一月(n+1月)的 b 對兔子可以存留至第n+2月(在當月屬於新誕生的兔子尚不能生育)。而新生育出的兔子對數等於所有在 n 月就已存在的 a 對
表達式 [编辑]
為求得斐波那契數列的一般表達式,可以藉助線性代數的方法。高中的初等數學知識也能求出。
初等代數解法 [编辑]
已知
首先構建等比數列 [编辑]
設
化簡得

比較系數可得:

不妨設
解得:

所以有
, 即
為等比數列。
求出數列{
} [编辑]
由以上可得:

變形得:
。 令
求數列{
}進而得到{
} [编辑]

設
,解得
。 故數列
為等比數列
即
。而
, 故有 
又有
和 
可得 ![a_{n}=\frac{\sqrt{5}}{5} \cdot \left[\left(\frac{1 + \sqrt{5}}{2}\right)^{n} - \left(\frac{1 - \sqrt{5}}{2}\right)^{n}\right]](http://upload.wikimedia.org/math/c/6/d/c6dc35b68545005b9b6fa6995c4f6d52.png)
得出
表達式
![a_{n}=\frac{\sqrt{5}}{5} \cdot \left[\left(\frac{1 + \sqrt{5}}{2}\right)^{n} - \left(\frac{1 - \sqrt{5}}{2}\right)^{n}\right]](http://upload.wikimedia.org/math/c/6/d/c6dc35b68545005b9b6fa6995c4f6d52.png)
線性代數解法 [编辑]


構建一個矩陣方程 [编辑]
設Jn為第n個月有生育能力的兔子數量,An為這一月份的兔子數量。
上式表達了兩個月之間,兔子數目之間的關係。而要求的是,An+1的表達式。
求矩陣的特徵值:
[编辑]
行列式:-
*(1-
)-1*1=
2-
-1
當行列式的值為0,解得
=
或
=
特徵向量 [编辑]
將兩個特徵值代入
求特徵向量
得
=
=
分解首向量 [编辑]
第一個月的情況是兔子一對,新生0對。
將它分解為用特徵向量表示。
(4)
用數學歸納法證明 [编辑]
從
=
可得到
(5)
化簡矩陣方程 [编辑]
將(4) 代入 (5)
根據 3
求A的表達式 [编辑]
現在在6的基礎上,可以很快求出An+1 的表達式,將兩個特徵值代入 6 中
(7)
(7)即為An+1 的表達式
近似值 [编辑]
用計算機求解 [编辑]
可通過編程觀察斐波那契數列。分為兩類問題,一種已知數列中的某一項,求序數。第二種是已知序數,求該項的值。
可通過遞歸遞推的算法解決此兩個問題。 事實上當n相當巨大的時候,O(n)的遞推/遞歸非常慢……這時候要用到矩陣加速這一技巧。
和黃金分割的關係 [编辑]
開普勒發現數列前、後兩項之比1/2 ,2/3 , 3/5 ,5/8 ,8/13 ,13/21 ,21/34 ,...... ,也組成了一個數列,會趨近黃金分割:
斐波那契數亦可以用連分數來表示:


而黃金分割數亦可以用無限連分數表示:
和自然的關係 [编辑]
許多的生物構成都和斐波那契數列有正相關。例如人體從脚底至頭頂之距離和從肚臍至腳底之距趨近於
,向日葵的種子螺旋排列99%是
。
恆等式 [编辑]
證明以下的恆等式有很多方法。以下會用組合論述來證明。
可以表示成用多個1和多個2相加令其和等於<mat 不失一般性,我們假設n ≥ 1。
是計算了將1和2加到n的方法的數目。若第一個被加數是1,有
種方法來完成對n-1的計算;若第一個被加數是2,有F(n-1)來完成對n-2的計算。因此,共有
種方法來計算n的值。
計算用多個1和多個2相加令其和等於n+1的方法的數目,同時最後一個加數是2的情況。
如前所述,當n � 0,有
種這樣的方法。因為當中隻有一種方法不用使用2,就即
(n+1項),於是我們從
減去1。
- 若第1個被加數是2,有
個方法來計算加至n-1的方法的數目; - 若第2個被加數是2、第1個被加數是1,有
個方法來計算加至
的方法的數目。 - 重複以上動作。
- 若第
個被加數為2,它之前的被加數均為1,就有F(0)個方法來計算加至0的數目。
若該數式包含2為被加數,2的首次出現位置必然在第1和n+1的被加數之間。2在不同位置的情況都考慮到後,得出
為要求的數目。
相關的數列 [编辑]
費波那西數列是費波那西n步數列步數為2的特殊情況,也和盧卡斯數列有關。
和盧卡斯數列的關係 [编辑]
反費波那西數列 [编辑]
反費波那西數列的遞歸公式如下:
如果它以1,-1,之後的數是:1,-1,2,-3,5,-8, ...
即是
。
反費波那西數列兩項之間的比會趨近
。
巴都萬數列 [编辑]
費波那西數列可以用一個接一個的正方形來表現,巴都萬數列則是用一個接一個的等邊三角形來表現,它有
的關係。
應用 [编辑]
正是滿足 Julia Robison 假設的丟番圖函數,因而證明了希爾伯特第十問題是不可解的。
相關猜想 [编辑]
斐波那契數列中是否存在無窮多個質數?
在斐波那契數列中,有質數: 2, 3, 5, 13, 89, 233, 1597, 28657, 514229, 433494437, 2971215073, 99194853094755497, 1066340417491710595814572169, 19134702400093278081449423917…… 目前已知最大質數是第81839個斐波那契數,一共有17103位數。
參考文獻 [编辑]
- KNUTH, D. E. 1997. The Art of Computer ProgrammingArt of Computer Programming, Volume 1: Fundamental Algorithms, Third Edition. Addison-Wesley. Chapter 1.2.8.
- 克裏福德A皮科夫. 數學之戀. 湖南科技出版社.






}
}進而得到{
}


(4)
=
(5)![{J_{n+1}\choose A_{n+1}} = \lambda^n \cdot [\frac{1}{\sqrt{5}} \cdot \begin{pmatrix}1\\\frac{1}{2} (1 + \sqrt{5})\end{pmatrix}-\frac{1}{\sqrt{5}} \cdot \begin{pmatrix}1\\\frac{1}{2} (1 - \sqrt{5})\end{pmatrix}]](http://upload.wikimedia.org/math/6/a/0/6a08087a30d1e00382906c2e829ad4e6.png)



(7)



個方法來計算加至
的方法的數目。
個被加數為2,它之前的被加數均為1,就有F(0)個方法來計算加至0的數目。





