独り言

プログラミングの講師をしています。新人研修で扱う技術の解説と個人の技術メモ、技術書の紹介など

【書籍】アルゴリズム図鑑

コンピュータアルゴリズムについての入門書になります。

アルゴリズムとは、ざっくりいえば物事を達成するための手順です。
例えば、料理におけるレシピなどがアルゴリズムになります。

コンピュータは、人間のように自分で考えて動くことができません。
人間が何かしらの命令(プログラム)を与えてあげることで初めて動作します。
また、コンピュータは人間のように曖昧な指示で動くこともできません。
一つ一つ正確な指示を出してあげなければ動けません。

コンピュータのアルゴリズムで代表的なのは、検索と並べ替えです。
人間なら、バラバラに散らばったトランプカードの中から特定の絵柄と数値のカードを探すのは簡単です。
あた、数字が小さい順に並び替えるのも、簡単にできるでしょう。
しかし、コンピュータはこういった人間なら簡単にできるようなことでも、一つ一つ細かく指示をしなければ実現できないのです。
また、どんなアルゴリズム(手順)にするかによって、結果が出るまでのスピードが変わったりもします。

そういう意味で、プログラミングをしていく上ではアルゴリズムを学ぶことは避けては通れません。
プログラミング言語に関する知識がどれだけあったとしても、アルゴリズムを考える力がなければ、自分がやりたい処理を実現することはできないからです。
そのコンピュータのアルゴリズムについて図を用いて分かりやすく解説してくれているのがこの「アルゴリズム図鑑」です。
具体的には、データ構造、検索、並び替え(ソート)、セキュリティのアルゴリズムなどが解説されています。
このアルゴリズム図鑑は、スマホアプリもあるので、動きをアニメーションで見たい方にはアプリを使いながら学ぶのも良いでしょう。