『なっとく!アルゴリズム』は、目で見て覚えるのが得意だという著者が手書きのイラストをふんだんに使用して、アルゴリズムを一から教えてくれる入門書です。
AIを可能にする機械学習・ディープラーニングはもとより、データベースやIoTにおいても、アルゴリズムはもはや欠かせません。ところが、その必要性・重要性が高まっているとはいえ、実際に学ぶハードルは非常に高いイメージが持たれているのではないでしょうか。
勉強しなくてはいけないと思っていても手をつけられず放ったらかし、あるいは、一度は勉強しようとしたけれど挫折した経験のある方もいるかもしれません。そんな方にこそ、本書をおすすめします。
本書は基本的な二分探索から始まり、ソート、再帰、動的計画法、ツリーやフーリエ変換まで、大事な項目を押さえています(サンプルコードはPythonが使われますが、何かしらプログラミング言語を知っていれば問題ありません)。
なんといっても、アルゴリズムを理解するための勘所が図解や図表ではなくかわいらしいイラストで的確に表現されているのが嬉しいところ。例えば、配列とリンクリストの違いを覚えるときに、「映画を観るために座席に座る」と考えるだけで済むようになります。
まずは視覚的にイメージが掴めるため、初心者として学び始めたい方はぜひチェックしてみてください。
目次
第1章 あれもこれもアルゴリズム
第2章 並べたり差し込んだり選んだり:ソート
第3章 同じ手順で何度でも:再帰
第4章 ちっちゃくしてから考えよう:クイックソート
第5章 関連付ければ話も早い:ハッシュテーブル
第6章 グラフを作れば見えてくる:幅優先探索
第7章 本からピアノへ物々交換大作戦:ダイクストラ法
第8章 問題は続くよどこまでも:貪欲法
第9章 ドロボーは計画的に:動的計画法
第10章 分類したら予測して:k近傍法
第11章 この先にはなにがあるの?
第12章 答え合わせ