当前第2页 返回上一页
1 2 3 4 5 6 7 8 9 10 | function fibonacci(n){
var a = [0,1,1];
if (n < 0) throw new Error( '输入的数字不能小于0' );
if (n >= 3){
for ( var i=3;i<=n;i++){
a[i] = a[i-1]+a[i-2];
}
}
return a[n];
}
|
方法4:直接使用变量实现
??相校于使用数组的方式去存放,使用变量的方式就不会那么浪费内存了,因为总共只会有3个变量,但是也有缺点,它只能保存最后计算的值以及前两个值,以前的值会被替换掉。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | function fibonacci(n){
var pre = 0;
var cur = 1;
var data;
if (n < 0) throw new Error( '请输入大于0的值!' );
if (n == 0) return 0;
if (n == 1) return 1;
if (n > 2){
for ( var i=2;i<=n;i++){
data = pre + cur;
pre = cur;
cur = data;
}
}
return data;
}
|
总结
??其实大部分人在求斐波那契数列时想到的都是递归的方法,但是就其事件复杂度来看,不是一个好的方法,那么我们的优化思路可能就是使用空间换换时间了,就是将递归产生的值保存下来,以免下次还要重复计算。
以上就是JavaScript实现斐波那契数列的四种方法介绍(代码)的详细内容,更多文章请关注木庄网络博客!
返回前面的内容
相关阅读 >>
详解js中map和foreach的差异
js怎么删除数组中某一元素
javascript主要作用是什么
javascript数组怎么删除项(元素)
javascript逻辑运算符有哪些
react表单元素的用法介绍(附代码)
聊聊javascript人脸识别技术
浅谈javascript中检查数组是否包含指定值的几种方法
javascript的map方法有什么用
c和javascript区别有哪些
更多相关阅读请进入《javascript》频道 >>
人民邮电出版社
本书对 Vue.js 3 技术细节的分析非常可靠,对于需要深入理解 Vue.js 3 的用户会有很大的帮助。——尤雨溪,Vue.js作者
转载请注明出处:木庄网络博客 » JavaScript实现斐波那契数列的四种方法介绍(代码)