2014-06-15から1日間の記事一覧

たらい回し関数をメモ化で高速化

前回『Pythonで遅延評価 - 超ウィザード級ハッカーのたのしみ』に引き続きたらい回し関数で遊んでみる。 今回は、メモ化(memoization)で高速化を試みる。 メモ化で高速化したたらい回し関数は以下のとおり。 memo = {} def memo_tarai(x, y, z): global memo…

ラムダ式で再帰関数を書く

Java8で導入されたと話題のラムダ式を勉強中。コーディングの観点からはただの無名関数以上の意味はないが、いろいろ深いみたい。 Pythonだと以下のように書く >>> add = lambda x, y: x + y >>> add(1, 2) 3 では、再帰関数はどうすればよいのだろう? 例え…