CodeZineを運営する翔泳社より、2月21日(火)に書籍『アルゴリズム図鑑 増補改訂版 絵で見てわかる33のアルゴリズム』が発売となりました。前版からアルゴリズムの掲載数を増やし、エンジニアがずっと使える土台の知識を独学するのにふさわしい1冊に仕上がりました。
アルゴリズムは効率的で処理の速いプログラムを書くのに不可欠ですが、たいていはエンジニアとして経験を積んでいく中で身についていくものです。ですが、試行錯誤する前に先人の知恵としてアルゴリズムを学んでおけば、よりよいプログラムを書けるようになります。
本書では様々なアルゴリズムを知っておきたいエンジニアのために、33個のアルゴリズムと7個のデータ構造を目で見てわかりやすいイラストに。誰でも仕組みや動きをイメージでき、初めて勉強するときにもリファレンスとして使いたいときにも役立つ解説書となっています。
アルゴリズムがイラストでわかる
目次
序章 アルゴリズムの基本
0-1 アルゴリズムとは?
0-2 計算時間の測り方
第1章 データ構造
1-1 データ構造とは?
1-2 リスト
1-3 配列
1-4 スタック
1-5 キュー
1-6 ハッシュテーブル
1-7 ヒープ
1-8 2 分探索木
第2章 ソート
2-1 ソートとは?
2-2 バブルソート
2-3 選択ソート
2-4 挿入ソート
2-5 ヒープソート
2-6 マージソート
2-7 クイックソート
第3章 配列の探索
3-1 線形探索
3-2 2分探索
第4章 グラフアルゴリズム
4-1 グラフとは?
4-2 幅優先探索
4-3 深さ優先探索
4-4 ベルマン-フォード法
4-5 ダイクストラ法
4-6 A*
4-7 クラスカル法
4-8 プリム法
4-9 マッチングアルゴリズム
第5章 セキュリティのアルゴリズム
5-1 セキュリティとアルゴリズム
5-2 暗号の基本
5-3 ハッシュ関数
5-4 共通鍵暗号方式
5-5 公開鍵暗号方式
5-6 ハイブリッド暗号方式
5-7 ディフィ-ヘルマン鍵交換法
5-8 メッセージ認証コード
5-9 デジタル署名
5-10 デジタル証明書
第6章 クラスタリング
6-1 クラスタリングとは?
6-2 k-means法
第7章 データ圧縮
7-1 データ圧縮と符号化
7-2 ランレングス符号
7-3 一意復号可能符号
7-4 瞬時符号
7-5 ハフマン符号
第8章 その他のアルゴリズム
8-1 ユークリッドの互除法
8-2 素数判定法
8-3 文字列照合
8-4 クヌース - モーリス - プラット法
8-5 ページランク
8-6 ハノイの塔
この記事は参考になりましたか?
- この記事の著者
-
渡部 拓也(ワタナベ タクヤ)
翔泳社マーケティング課。MarkeZine、CodeZine、EnterpriseZine、Biz/Zine、ほかにて翔泳社の本の紹介記事や著者インタビュー、たまにそれ以外も執筆しています。
※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です
【AD】本記事の内容は記事掲載開始時点のものです 企画・制作 株式会社翔泳社