本文摘自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怎么定义map
简析如何用js实现简单轮播
js中常见的一些表单验证正则表达式
js正则表达式之限1-2位整数或者至多含有两位小数的写法
介绍js 表单提交信息加密
javascript修改元素内容
js函数中的几种参数形式
js如何实现简单的秒表效果
js 中排名前十的报错如何避免
自学 html5 要多久
更多相关阅读请进入《js》频道 >>
人民邮电出版社
本书对 Vue.js 3 技术细节的分析非常可靠,对于需要深入理解 Vue.js 3 的用户会有很大的帮助。——尤雨溪,Vue.js作者
转载请注明出处:木庄网络博客 » JS实现斐波那契列数的三种方法