タグ

ブックマーク / floralcompany.jp (1)

  • use Memoize; - FloralCompany.log

    perl(v5.7.3以降) の標準モジュールに Memoize というのがある。何をするやつかというと、perldoc 曰く Make functions faster by trading space for time 「(計算)時間と(メモリ等の)領域とを取引して、関数を早くします」ということで、メモ化を行ってくれるモジュールです。 百聞は一見に如かず。というわけで、(Benchmark使うんでcodepadは自重 use strict; use Memoize; use Benchmark 'timethese'; sub collatz { my $n = shift; $n == 1 ? 0 : 1+collatz( $n%2 ? $n*3+1 : $n/2 ); } sub fibonacci { my $n = shift; $n <= 2 ? 1 : fibonacci(

    sankaseki
    sankaseki 2008/12/11
    use Memoize; - FloralCompany.log
  • 1