たくあんポリポリ

勉強したことを載せていきます。最近、技術系の記事はZennに書いています。(https://zenn.dev/chittai)

アルゴリズム図鑑を読んで

アルゴリズム図鑑を読み終えたのでまとめてみます。

アルゴリズム図鑑とは

26のアルゴリズム+7つのデータ構造がカラーでわかりやすく解説されています。アプリが元になっていて、アプリでは一つ一つのステップをアニメーションで確認しながらすすめることができます。両方買ってみましたが、本のほうがより詳しく説明されている部分もあったので、本を買っても損はないと思います。

アルゴリズム図鑑 絵で見てわかる26のアルゴリズム

アルゴリズム図鑑 絵で見てわかる26のアルゴリズム

おすすめできるレベル層

アルゴリズムの勉強したけど忘れちゃったという人から、初めて勉強する人まで使えると思います。ただ、この本の読者は自分でコードを書いている方々がほとんどな気がするので、自分で実装しないと身につかないと思います。

読み方

私は下記のように読みました。

  1. アルゴリズムの説明を読み込む

  2. 実際にアルゴリズムを実装してみる。すべてのアルゴリズムではないですが、最短経路問題のアルゴリズムなどはAtCoderの問題を解くことで実装を試しました。単純にアルゴリズムの勉強をする目的だとAtCoderは考察が入るので大変かと思いますが、競プロ参戦を目指すのであればせっかくなのでAtCoderの問題を解いてみると良いと思います。

正直、このループです。読んで実装してを繰り返しました。

各章のコード

AtCoderでACにならなかった(TLE...)ものもあります。(たしか幅優先探索がそうだったような)でも、挙動としては問題ないと思います。

第2章 ソート

github.com

第3章 配列の探索

github.com

第4章 グラフ探索

第7章 その他のアルゴリズム

よく見たら全部実装したわけじゃなかったけど、Githubに上げてないけど写経したりしているのもあるので一通り実装はしていると言っていいはず。。

まとめ

アルゴリズム図鑑で基本的なアルゴリズムとデータ構造を勉強し、そこからさらに他のアルゴリズムを学ぶと良いと思ったので、次はチーター本でも読んで見ようかなと思う。