第1章 アルゴリズムと計算量
1.1 アルゴリズムとは
1.2 計算量
1章の問題
第2章 基本的なデータ構造
2.1 配列とリスト
2.2 スタック
2.3 待ち行列
2.4 木
2章の問題
第3章 集合の表現法
3.1 優先度付き待ち行列
3.2 2分探索木
3.3 平衡木
3.4 ハッシュ
3.5 集合群
3章の問題
第4章 整列(ソート)
4.1 バブルソート
4.2 クイックソート
4.3 マージソート
4.4 ヒープソート
4.5 バケットソート
4.6 基数ソート
4章の問題
第5章 有向グラフ
5.1 ダイクストラのアルゴリズム
5.2 フロイドのアルゴリズム
5.3 有向グラフの探索
5.4 強連結成分
5章の問題
第6章 無向グラフ
6.1 最小木
6.2 関節点
6章の問題
第7章 文字列の検索
7.1 単純な方法
7.2 KMPアルゴリズム
7.3 BMアルゴリズム
7章の問題
第8章 設計法
8.1 分割統治法
8.2 動的計画法
8.3 欲張り法
8章の問題
問題解答
参考文献
索引
1.1 アルゴリズムとは
1.2 計算量
1章の問題
第2章 基本的なデータ構造
2.1 配列とリスト
2.2 スタック
2.3 待ち行列
2.4 木
2章の問題
第3章 集合の表現法
3.1 優先度付き待ち行列
3.2 2分探索木
3.3 平衡木
3.4 ハッシュ
3.5 集合群
3章の問題
第4章 整列(ソート)
4.1 バブルソート
4.2 クイックソート
4.3 マージソート
4.4 ヒープソート
4.5 バケットソート
4.6 基数ソート
4章の問題
第5章 有向グラフ
5.1 ダイクストラのアルゴリズム
5.2 フロイドのアルゴリズム
5.3 有向グラフの探索
5.4 強連結成分
5章の問題
第6章 無向グラフ
6.1 最小木
6.2 関節点
6章の問題
第7章 文字列の検索
7.1 単純な方法
7.2 KMPアルゴリズム
7.3 BMアルゴリズム
7章の問題
第8章 設計法
8.1 分割統治法
8.2 動的計画法
8.3 欲張り法
8章の問題
問題解答
参考文献
索引