RubyでFibonacci Seriesを解く -CodeEval

メモ化を使って


n番目のフィボナッチ数


(追記:2012-2-2)
id:rochefortさんによるメモ化

def fib(n)
  @cache ||= []
  @cache[n] ||= (n<2)? n : fib(n-2) + fib(n-1);
end

Fibonacci Series - うんたらかんたら日記
なるほどこちらのほうが見やすいです


でこれにならって修正版

@mem = { -2 => -1, -1 => 1 }
fib = ->n { @mem[n] ||= fib[n-1] + fib[n-2] }