Aditya Y. Bhargava 【なっとく!アルゴリズム】
ソフトウェアに関連してる基礎的なアルゴリズムについて触れている本。情報系の人だったら普通に知っているんだろうけど自分はそこら辺に疎くアルゴリズムの触りを知れてとても為になった。
アルゴリズムのコードはpython2.7系で書かれていて
ここのサイトからpython3系に直されてるコードが見れる(物によっては2.7系のままで書いてあったけど、そこまで差支えはないと思う。)
このサイトに他の言語のコードで書かれたアルゴリズムが公開されているのでpython学習者以外でもおそらくだいじょうぶだと思われる。
大型本の割にはだいぶ読みやすく、読了するまでそこまで時間はかからなかった。
ビックオー記法、二分探索、ソート、メモリ、配列、リンクリスト、再帰、分割統治、クイックソート、ハッシュ関数、衝突、幅優先探索、NP完全問題、近似アルゴリズム
ここら辺のフレーズが出てくる。
自分は7章のダイクストラム法あたりから 難しいなーと感じて流し読みしてた。また10章では機械学習やk近傍法について軽く触れてるんだけどほんとにさわりだけ、という感じで少し残念。でも全体的に、読者が理解できるようにたくさんの絵を使ってアルゴリズムの説明をしていて好感だった。
アルゴリズムは興味あるんだけどよく分からない、pythonならすこしできるよ
という人には十分おすすめの本!