斐波那契求第n項
阿新 • • 發佈:2019-01-05
摘自 https://blog.csdn.net/lpjishu/article/details/51323116
斐波那契求第n項是常見的演算法題
方法1 遞迴法
//斐波那契 0,1,1,2,3,5 求n //呼叫過程像一個二叉樹 //f8 會調 f7,f6 f7會呼叫 f6,f5。 這樣f6就重複了 //45之後就很慢了 function getN(n){ if(n <= 0){ return 0; } if(n === 1){ return 1; } return getN(n - 1) + getN(n - 2); } console.log(getN(47));
方法2 迴圈
//迴圈 秒出 function getN(n){ if(n <= 0){ return 0; } if(n === 1){ return 1; } var prev = 0; var next = 1; var num = 0; for (var i = 2; i <= n; i++) { num = next + prev prev = next next = num } return num; } console.log(getN(10000));