另一种fib高效实现
缓存形式的实现
var memoize = function(fn) {
var cache = [];
return function(i) {
return (i in cache) ? cache[i] :
(cache[i] = fn.call(arguments.callee, i));
};
}
var fib = new memoize(function(i) {
if (i == 0 || i == 1)
return 1;
return this(i-1) + this(i-2);
})
新的实现:
function fib(n) {
function _fib(n, a, b, arg1, arg2) {
if(n>1) _fib(n-1, a, b, arguments, arg1);
return arg1[2] = arg2[1] = a+b;
}
return _fib(n, 0, 1, [], []);
}
机器瞎学/数据掩埋/模式混淆/人工智障/深度遗忘/神经掉线/计算机幻觉/专注单身二十五年
浙公网安备 33010602011771号