第1章 準備
1.1 アルゴリズムとは何か
1.2 問題とアルゴリズムの正しさ
1.3 基本操作とアルゴリズムの実行時間
1.4 関数の漸近的振舞いと最悪値評価
章末問題
第2章 文字列照合アルゴリズム
2.1 文字列の走査
2.2 文字列照合問題
2.3 KMP法
2.4 パターン照合テーブルの構成法
章末問題
第3章 整列アルゴリズム
3.1 整列問題
3.2 選択ソート
3.3 挿入ソート
3.4 分割統治法
3.5 クイックソート
3.6 マージソート
3.7 基数ソート
章末問題
第4章 基本データ構造
4.1 データ構造の重要性
4.2 キューとスタック
4.3 二分探索木
4.4 平衡木
4.5 ヒープ
4.6 素集合データ構造
章末問題
第5章 最短経路アルゴリズム
5.1 最短経路問題
5.2 グラフの表現方法
5.3 ダイクストラ法
5.4 ベルマン-フォード法
章末問題
第6章 最小全域木アルゴリズム
6.1 最小全域木問題
6.2 最良優先探索法
6.3 クラスカル法
6.4 プリム法
章末問題
章末問題解答
付録 Cプログラム例
参考文献
索引
1.1 アルゴリズムとは何か
1.2 問題とアルゴリズムの正しさ
1.3 基本操作とアルゴリズムの実行時間
1.4 関数の漸近的振舞いと最悪値評価
章末問題
第2章 文字列照合アルゴリズム
2.1 文字列の走査
2.2 文字列照合問題
2.3 KMP法
2.4 パターン照合テーブルの構成法
章末問題
第3章 整列アルゴリズム
3.1 整列問題
3.2 選択ソート
3.3 挿入ソート
3.4 分割統治法
3.5 クイックソート
3.6 マージソート
3.7 基数ソート
章末問題
第4章 基本データ構造
4.1 データ構造の重要性
4.2 キューとスタック
4.3 二分探索木
4.4 平衡木
4.5 ヒープ
4.6 素集合データ構造
章末問題
第5章 最短経路アルゴリズム
5.1 最短経路問題
5.2 グラフの表現方法
5.3 ダイクストラ法
5.4 ベルマン-フォード法
章末問題
第6章 最小全域木アルゴリズム
6.1 最小全域木問題
6.2 最良優先探索法
6.3 クラスカル法
6.4 プリム法
章末問題
章末問題解答
付録 Cプログラム例
参考文献
索引