なっとく! アルゴリズム
アルゴリズムがイラストつきで分かりやすく説明されている本。
Python、Ruby、JavaScript、C#、Gambas版のサンプルのソースコードがGitHubからダウンロードできるみたい。
いろいろな言語に対応しているな。
本書では以下のようなテーマがとりあげられている。
- 二分探索
- ビッグオー記法
- 配列とリンクリスト
- 再帰
- 問題解決手法
- 分割統治
- 貪欲法
- 動的計画法
- クイックソート
- ハッシュテーブル
- グラフアルゴリズム
- 幅優先探索
- ダイクストラ法
- k近傍法
- 次なるステップへ
図がたくさん載っているのでスラスラと読むことができた。
さらに他のアルゴリズムについて勉強したいなら、第11章「次なるステップへ」で紹介されている10個のアルゴリズムについて調べるといいらしい。
あと、関数型プログラミングではループがなくて、代わりに再帰を使うみたい。
関数型プログラミングについて僕はよく知らないので、ほうと思った。