斐波那契數列( 兔子數列 )的效能問題

2021-09-24 13:37:20 字數 571 閱讀 5689

斐波那契數列是典型的遞迴函式解決問題的演算法。

普通的斐波那契數列具有很大的效能問題

// 預設沒有快取時

let tesetnum = 30;

console.time('nocache');

function fibonacci1(n)

fibonacci1(tesetnum);

console.timeend('nocache');

// 優化後使用快取

console.time("hascache");

let cache = {};

let fibonacci = function(n)

return cache[n] = fibonacci(n-1) + fibonacci(n-2);

}fibonacci(tesetnum);

console.timeend('hascache');

結果效能差別如下

兔子生兔子問題 斐波那契數列

題目 有一對兔子,從出生後第3個月起每個月都生一對兔子,小兔子長到第三個月後每個月又生一對兔子。假如兔子都不死,要求輸出一年內兔子的數量是多少。1 1 2 3 5 8 如下 兔子問題 斐波那契 public class homework05 static intfab int month stati...

java兔子問題(斐波那契數列)

題目 古典問題 有一對兔子,從出生後第3個月起每個月都生一對兔子,小兔子長到第三個月後每個月又生一對兔子 假如兔子都不死,問每個月的兔子總數為多少?斐波那契數列,沒乙個值都等於前兩個值之和 author gkf46762 public class rabbit public static int g...

斐波那契數列 兔子繁殖問題

古典問題 有一對兔子,從出生後第3個月起每個月都生一對兔子,小兔子長到第3個月後每個月又生一對兔子,假如兔子都不死,問每個月的兔子總數為多少?演算法分析 假設給兔子的對數編號 第乙個月 1 sum 1 第二個月 1 sum 1 第三個月 1生2,sum 2 第四個月 1生3,2,sum 3 第五個月...