教養として知っておきたい『アルゴリズム』を図解でわかりやすく学ぶ

本の概要

Googleの検索結果、ECサイトでおすすめされる商品、迷惑メールの自動判別、文字の変換と関連語の提案、交通機関のルート提案。いつからか身の回りに溢れている仕組みの裏にあるのが『アルゴリズム』だ。
そんなアルゴリズムの中から26種類のアルゴリズムを図で表すことで視覚的に理解しやすくしたのが本書である。

著者紹介

著者は石田 保輝さんと宮崎 修一さんの共著。
石田 保輝さんはフリーランスエンジニアでスマホアプリの『アルゴリズム図鑑』の作者。
宮崎 修一さんは京都大学大学院情報学研究科助手としてアルゴリズムの研究に携わっているそうです。

読んでみて

興味本位で手にとってはみたけれど、そもそもアルゴリズムとはなんだろうか?
カタカナ語として当たり前に使ってしまっているけど、日本語で伝えるとしたら何だろうと思い調べてみた。

アルゴリズム(英: algorithm)とは、「計算可能」なことを計算する、形式的な(formalな)手続きのこと、あるいはそれを形式的に表現したもの。 コンピュータにアルゴリズムをソフトウェア的に実装するものがコンピュータプログラムである。

なるほど、日本語のほうがわかりずらい。
ようは『特定の処理の手順や方式』ってことになるんだろう。

4コマ漫画のようでわかりやすい

アルゴリズムと聞くとなんだか複雑でわかりずらいものという印象を持ってしまいがちだけど、この本はデータを処理する流れが1コマずつ図解されているのでアルゴリズムを視覚的に理解できる。
アルゴリズムを選択する時の評価基準として重要視されるのが計算時間となる。しかし、処理するコンピューターによって計算時間は変わってしまうため、ステップ数で計算時間を測るそうだ。
ステップ数を意識する上で、処理をコマ割で図で表現しているのがが本当にわかりやすい。

いくつかのアルゴリズムは、処理をただ複雑にしているようにも思えてしまい、メリットがわからず、どんなところで使い道があるんだろうと思ってしまうものもある。これは、おそらく今の自分のレベルを写す鏡なのだろうと思う。

すべてが理解できるかは別として、小学生でも高学年だったら読めそう。
そして、プログラミングを勉強している社会人なんかでも一緒に読むことで地力やプログラミングに対する理解度をあげてくれそうな気もします。自分が中学や高校の図書室に入れる本を選ぶ権利があるなら選びたい。
そんな1冊でした。

こんな人におすすめ!

  • プログラミング初学者
  • ITリテラシーを高めたい人
  • お子さんの英才教育に