本文摘自PHP中文网,作者藏色散人,侵删。
下面由javascript基础入门教程栏目给大家介绍JS实现斐波那契列数的三种方法,希望对需要的朋友有所帮助!JS实现斐波那契列数的三种方法
大家是怎么实现斐波那契列数的
1,1,2,3,5,8...
f(n)=f(n-1) + f(n-2)
方法一:
1 2 3 4 5 6 7 8 | function f(n){
if (n == 1 || n == 0){
return 1;
}
return f(n-1) + f(n-2);
}
index.html
|
再给两种解法,对比一下
方法二:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | function f(n) {
var arr = [];
var value = null;
function _f(n) {
if (n == 1 || n == 0) {
return 1;
}
if (arr[n])
return arr[n];
value = _f(n - 1) + _f(n - 2);
arr[n] = value;
return value;
}
return _f(n);
}
方法二
|
还有一种更简单的用的是数组存储
方法三:
1 2 3 4 5 6 7 8 | function fn(n) {
var dp = new Array(n + 1);
dp[0] = dp[1] = 1;
for (let i = 2, length = dp.length; i < length; i++) {
dp[i] = dp[i - 1] + dp[i - 2];
}
return dp[n];
}
|
相关推荐:《javascript高级教程》
以上就是JS实现斐波那契列数的三种方法的详细内容,更多文章请关注木庄网络博客!
相关阅读 >>
简析如何用js实现简单轮播
javascript中对象属性详解
jquery怎么写ajax
javascript如何解除绑定事件
为什么css放上面js放下面
js 中 undefined 什么意思
微信js是什么
js如何实现滑动门效果
js怎么移除css属性
json解析是什么?
更多相关阅读请进入《js》频道 >>
人民邮电出版社
本书对 Vue.js 3 技术细节的分析非常可靠,对于需要深入理解 Vue.js 3 的用户会有很大的帮助。——尤雨溪,Vue.js作者
转载请注明出处:木庄网络博客 » JS实现斐波那契列数的三种方法