当前第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实现斐波那契数列的四种方法介绍(代码)的详细内容,更多文章请关注木庄网络博客!
返回前面的内容
相关阅读 >>
javascript如何删除对象属性
javascript数字转字符串的函数有哪些
javascript怎么定义类数组对象
10个开发者经常问的javascript面试题(附答案解析)
javascript预编译做了啥
javascript中slice方法怎么用
详细了解javascript中的延迟加载
javascript怎么进行强制类型转换
html5实现微信jssdk录音播放语音的实例
javascript如何实现json转数组
更多相关阅读请进入《javascript》频道 >>
人民邮电出版社
本书对 Vue.js 3 技术细节的分析非常可靠,对于需要深入理解 Vue.js 3 的用户会有很大的帮助。——尤雨溪,Vue.js作者
转载请注明出处:木庄网络博客 » JavaScript实现斐波那契数列的四种方法介绍(代码)