斐波那契數列作為程序員的必備知識點,初學者更應當深入理解與掌握。斐波那契數列由 1 和 1 開始,之后的斐波那契數列系數就由之前的兩數相加。js函數實現斐波那契數列代碼如下:
函數實現:
1 <script type="text/javascript">
2 function fibonacci(n) { 3 var one = 1; 4 var two = 1; 5 for(var i = 3; i <= n; i++) { //此處代碼重點部分,用three累加前兩個數的和,也是斐波那契數列的精髓所在。 6 var three = one + two; 7 one = two; 8 two = three; 9
10 } 11 if (n==1||n==2) { //判斷n==1或2的情況下返回undefined 12 return one; 13 } 14 return three; //最后返回three 15 } 16 console.log(fibonacci(2)); 17 </script>
遞歸實現:
1 function box(m){ 2 if(m==1||m==2){ 3 return 1; 4 } 5 8 return box(m-1)+box(m-2); //除去1和2的兩種情況,遞歸斐波那契數列一行代碼就能搞定,但是遞歸性能是大大不如函數的。 9 } 10 alert(box(2));