数论 —— 斐波那契数列(Fibonacci)
生活随笔
收集整理的這篇文章主要介紹了
数论 —— 斐波那契数列(Fibonacci)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
【概述】
斐波那契數列(Fibonacci sequence),又稱黃金分割數列,其指的是這樣一個數列:1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233,377,610,987,1597,2584,4181,6765,10946,17711,28657,46368....這個數列從第 3 項開始,每一項都等于前兩項之和。
斐波那契數列除應用遞推、遞歸定義解題外,還可用于改進二分查找——斐波那契數列查找。
關于斐波那契查找:點擊這里
【特性】
【公式】
1.通項公式
2.遞推公式
根據定義可知:F0=0,F1=1,F2=F1+F0=1,F3=F2+F1=2,F4=F3+F2=3,F5=F4+F3=5,……
int Fibonacci(int n) { if (n<0) return -1; int n1=1,n2=2,n3=3;for (int i=3;i<=n;++i) { n3=n1+n2; n1=n2; n2=n3; } return n3; }3.遞歸公式
如果設 F(n)為該數列的第n項,那么斐波那契數列可以寫成如下形式:
int fibonacci(int n) {if (n == 1 || n == 2)// 遞歸終止條件return 1;// 簡單情景return fibonacci(n-1)+fibonacci(n-2); // 相同重復邏輯,縮小問題的規模 }【例題】
總結
以上是生活随笔為你收集整理的数论 —— 斐波那契数列(Fibonacci)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 迷宫城堡(HDU-1269)
- 下一篇: Apocalypse Someday(P