斐波那契數列是典型的遞迴函式解決問題的演算法。
普通的斐波那契數列具有很大的效能問題
// 預設沒有快取時
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 第五個月...