アルゴリズム

はじめてのアルゴリズム

上原隆平
近代科学社

第1章 準備
1.1 マシンモデル

  • コラム:デジタルではないコンピュータはあるのか?

1.2 アルゴリズムの実行効率
1.3 データ構造

  • コラム:より深いデータ構造へ向かうには?

1.4 O記法とその他の記法

  • コラム:f(n)=O(n)の読み方

1.5 多項式・指数関数・対数関数・調和数

  • コラム:ロピタルの定理(l’Hospital’s rule)
  • コラム:疑問を持とう!

1.6 グラフとは

  • コラム:Webページのリンク構造

第2章 再帰呼出し
2.1 ハノイの塔
2.2 フィボナッチ数
2.3 分割統治法と動的計画法

第3章 サーチとソートのアルゴリズム
3.1 サーチ
3.2 ソート

  • コラム:クイックソートの効率のよい実装

第4章 グラフ構造と探索アルゴリズム
4.1 グラフにおけるさまざまな問題
4.2 到達可能性問題:深さ優先探索によるグラフの探索
4.3 最短経路問題・幅優先探索によるグラフ探索
4.4 移動コストの最小化問題:ダイクストラ法による探索

  • コラム:最新の経路探索アルゴリズムはすごい!

第5章 バックトラック
5.1 エイト・クイーン

  • コラム:重複解を取り除く方法
  • コラム:バックトラック?

5.2 騎士の巡回問題

  • コラム:探索空間と盤面の大きさ

第6章 乱択アルゴリズム
6.1 乱数について

  • コラム:メルセンヌ・ツイスター法

6.2 シャッフル問題
6.3 クーポンコレクター問題

第7章 読書案内
7.1 初級者向け
7.2 中級者以上向け
7.3 バイブル

第8章 演習問題の解答

  • コラム:アルゴリズムはすごい!

おわりに
索引