著名數列及其演算法 斐波拉契

2021-10-01 09:53:36 字數 2360 閱讀 5664

1、斐波那契數列

2、帕多瓦數列

3、卡特蘭數4、look-and-say 數列

5.遞推數列––

1、斐波那契數列

斐波那契數列,又稱**分割數列、因數學家列昂納多·斐波那契以兔子繁殖為例子而引入,故又稱為「兔子數列」,提出時間為2023年。

指的是這樣乙個數列:1、1、2、3、5、8、13、21、34、…;在數學上,

斐波那契數列以如下被以遞迴的方法定義:

f(1)=1, f(2)=1, f(n)=f(n-1)+f(n-2) (n>2,n∈n*)。

方法一:遞迴方法

function f(n) else

}console.log(f(6));

方法二:動態規劃方法(效能得到優化)

function fibonacci(n)

return sum

}console.log(fibonacci(5));

2、帕多瓦數列

帕多瓦數列是由帕多瓦總結而出的。

它和斐波拉契數列非常相似,稍有不同的是:每個數都是跳過它前面的那個數,並把再前面的兩個數相加而得出的。

它的特點為從第四項開始,每一項都是前面2項與前面3項的和。

即x=(x-2)+(x-3),x為項的序數(x>4)。

帕多瓦數列是:1,1,1,2,2,3,4,5,7,9,12,16,21,28,37,49,65,86,114,151……

3、卡特蘭數

卡特蘭數又稱卡塔蘭數,英文名catalan number,是組合數學中乙個常出現在各種計數問題**現的數列。以比利時的數學家歐仁·查理·卡塔蘭 (1814–1894)的名字來命名,

其前幾項為(從第零項開始) :

1, 1, 2, 5, 14, 42, 132, 429, 1430, 4862, 16796, 58786, 208012, 742900, 2674440, 9694845, 35357670, 129644790, 477638700,

卡特蘭數cn滿足以下遞推關係 :

設h(n)為catalan數的第n+1項,令h(0)=1,h(1)=1,catalan數滿足遞推式 [2] :

h(n)= h(0)*h(n-1)+h(1)*h(n-2) + … + h(n-1)*h(0) (n>=2)

5、遞推數列

遞推數列是可以遞推找出規律的數列,找出這個規律的通項式就是解遞推數列。求遞推數列通項公式的常用方法有:公式法、累加法、累乘法、待定係數法等共十種方法。

1)等比數列(一般地,如果乙個數列從第2項起,每一項與它的前一項的比等於同乙個常數,這個數列就叫做等比數列)

an=a1q(n-1)可以表示為:an=qa(n-1);

2)等差數列(一般地,如果乙個數列從第2項起,每一項與它的前一項的差等於同乙個常數,這個數列就叫做等差數列)

an=a1+(n-1)d

3)等和數列(在乙個數列中,如果每一項與它的後一項的和都為同乙個常數,那麼這個數列叫做等和數列,這個常數叫做該數列的公和。)

d=an-an-1 (n≥2)

4)大衍數列 0、2、4、8、12、18、24、32、40、50------

通項式:

an=(n×n-1)÷2 (n為奇數)

an=n×n÷2 (n為偶數)

4、look-and-say 數列

look-and-say 數列是數學中的一種數列,它的名字就是它的推導方式:給定第一項之後,後一項是前一項的發音。

2023年11月,在英國劍橋大學教書的著名數學家約翰·霍頓·康威(john horton conway) 首先發現了look-and-say的奧秘

如果我們把 1 作為look-and-say 數列的第一項,那麼,它的前幾項是這樣的:

1, 11, 21, 1211, 111221, 312211, 13112221, 1113213211, …

在確定了look-and-say 數列的第一項之後,就可以根據前一項確定後一項的值了,在上面的示例中,我們把 1 作為此種數列的第一項,那麼,就可以這樣來推導它的其餘項了:

第1個是 1 時,記作 1;

第2個是讀前乙個數 「2 個1」, 記作 21;

第3個是讀前乙個數 「1個2, 1個1」, 記作 1211;

第4個是讀前乙個數 「1個1,1個2,2個1」, 記作 111221;

當 d =22 時,很尷尬的事情發生了,look-and-say 數列的前幾項是:

22, 22, 22, 22,22, …

斐波拉契數列 演算法

斐波那契數列是一組第一位f1和第二位f2為1,從第三位開始,後一位是前兩位和的一組遞增數列fn fn 1 fn 2。那麼當n比較大時,fn也非常大,現在我們想知道,第n項,fn等於多少 如 輸入格式 輸入包含乙個整數n。輸出格式 輸出一行,包含乙個整數,表示fn。樣例輸入10此時fibonacc 樣...

斐波拉契數列

斐波拉契數列 1 1 2 3 5 8 13 21 34.其中每乙個數字都是前兩個數字的和。遞迴計算 long fibonacci int n 非遞迴計算 long fibonacci int n return result 這個函式的遞迴實現使用了雙重遞迴 double recursion 函式對本...

斐波拉契數列

編寫彙編程序列印1 1000的斐波拉契數列 原始碼assume cs code,ss stack,ds data data segment fibo dw 0,1,64 dup 0 str db the fibo list is 0ah,0dh,data ends stack segment db ...