当前第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代表什么
javascript知识点总结之 函数与事件
javascript怎么设置src属性
详解javascript中async/await是如何工作的
javascript中二进制怎么转为十六进制
javascript怎么设置固定时间
h5新特性的用法:监听app自带的返回键
何时在javascript中使用const关键字?
详解javascript数组开头添加元素的3种方法
vue响应式原理及依赖收集的介绍 (附代码)
更多相关阅读请进入《javascript》频道 >>
人民邮电出版社
本书对 Vue.js 3 技术细节的分析非常可靠,对于需要深入理解 Vue.js 3 的用户会有很大的帮助。——尤雨溪,Vue.js作者
转载请注明出处:木庄网络博客 » JavaScript实现斐波那契数列的四种方法介绍(代码)