斐波纳契数列
Posted wangziye
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了斐波纳契数列相关的知识,希望对你有一定的参考价值。
查找斐波纳契数列中第 N 个数。
所谓的斐波纳契数列是指:
- 前2个数是 0 和 1 。
- 第 i 个数是第 i-1 个数和第i-2 个数的和。
const foo= (n)=> { if(n==1){ return 0 } if(n==2){ return 1 } return foo(n-2)+foo(n-1) }
经典的递归实现方式,当选取向n过大时,严重的影响了执行效率,我通过声明变量来储存前两项相加的和
const foo= (n)=> { //前面两项通过特殊值处理 if(n==1){ return 0 } if(n==2){ return 1 } //第一项的值 let a = 0; //第二项 let b = 1; //第三项 let c = 0; for(let i = 3; i<n+1;i++){ //将前面两项进行相加,通过变量进行存储 //调换顺序 c = a + b; a = b; b = c; } return c; }
这种方法极大的提高的计算效率,通过循环的方向不断进行累加
以上是关于斐波纳契数列的主要内容,如果未能解决你的问题,请参考以下文章