function fibonacci(n) {
return fib(n)[n]
}
var fib=(function(n){
var meo=[0,1]
return function(n){
for(var i=meo.length;i<=n;i++){
meo[i]=meo[i-1]+meo[i-2]
}
return meo.slice(0,n+1)
}
})()
以上空间复杂度:o(n),时间复杂度:o(n),最快 o(1)
 
 
2.运用大数加法:
var _fib = (function (n) {
var memory = ['0', '1']; function add(a, b) {
var res = '',
c = 0;
a = a.split('');
b = b.split('');
while (a.length || b.length || c) {
c += ~~a.pop() + ~~b.pop();
res = c % 10 + res;
c = c > 9;
}
return res.replace(/^0+/, '');
} return function (n) {
for (var i = memory.length; i <= n; i++) {
memory[i] = add(memory[i - 1], memory[i - 2]);
}
//console.log(memory.length + ' numbers saved.');
return memory.slice(0, n + 1);
};
})(); var fibonacci = function (n) {
return _fib(n)[n];
}

最新文章

  1. Redis的介绍及使用实例.
  2. BZOJ3789 : 扫雪车
  3. JavaScript toString() 函数详解
  4. Linked List Cycle &amp;&amp; Linked List Cycle II
  5. python基本数据类型——tuple
  6. 51nod_1831: 小C的游戏(Bash博弈 找规律)
  7. tomcat加入系统服务+开机自启
  8. Java EE的未来
  9. 20181218 - PostgreSQL Auto Commit Guide(自动提交)
  10. firewall配置
  11. C# 枚举用法
  12. 第五篇:数据备份、pymysql模块
  13. 4.8cf自训
  14. Linux command stty
  15. C/C++与Java的区别
  16. vsCode_1.27.2
  17. 用Solidity在Truffle上构建一个HelloWorld智能合约
  18. python判断文件和文件夹是否存在、没有则创建文件夹
  19. flink 根据时间消费kafka
  20. query flot 直方图上显示对应的y值

热门文章

  1. 001. html篇之《基础内容》
  2. wget 多线程下载 mwget 工具安装
  3. GeoServer 发布PostGIS数据库中的栅格数据
  4. css3中-webkit是什么意思
  5. Linux 扩容 / 根分区(LVM+非LVM)
  6. jmeter分布式压测配置
  7. liunx设置QQ邮箱报警
  8. mmdetection3d安装
  9. js 判断gps是否超出设定范围
  10. 通过EXCEL/WPS文件,拼接SQL,刷数据库数据