アルゴリズム

アルゴリズムとデータ構造

N. ヴィルト
近代科学社

訳者序文
原著者序文1986年版への原著者序文記法

1 基本的データ構造

  • 1.1 はじめに
  • 1.2 データ型の概念
  • 1.3 素朴なデータ型
  • 1.4 標準的な素朴な方
  • 1.5 部分範囲型
  • 1.6 配列構造
  • 1.7 レコード構造
  • 1.8 レコード構造の可変要素
  • 1.9 集合構造
  • 1.10 配列,レコード,集合構造の表現
    • 1.10.1 配列の表現
    • 1.10.2 レコード構造の表現
    • 1.10.3 集合の表現
  • 1.11 列構造
    • 1.11.1 基本的な列演算子
    • 1.11.2 バッファリング
    • 1.11.3 標準的な入出力
  • 1.12 探索
    • 1.12.1 線形探索
    • 1.12.2 2分探索
    • 1.12.3 表探索
    • 1.12.4 単純な文字列探索
    • 1.12.5 Knuth-Morris-Prattの文字列探索
    • 1.12.6 Boyer-Mooreの文字列探索
  • 演習問題
  • 参考文献

2 分類

  • 2.1 はじめに
  • 2.2 配列の分類
    • 2.2.1 単純挿入による分類
    • 2.2.2 単純選択による分類
    • 2.2.3 単純交換による分類
  • 2.3 高等な分類法
    • 2.3.1 増分の減少系列を用いた挿入分類
    • 2.3.2 木分類
    • 2.3.3 分類分割
    • 2.3.4 中央値を求めること
    • 2.3.5 配列分類の方法の比較
  • 2.4 列の分類
    • 2.4.1 単純併合
    • 2.4.2 自然併合
    • 2.4.3 平衡多重併合
    • 2.4.4 ポリフェーズの分類
    • 2.4.5 最初の連の分配
  • 演習問題
  • 参考文献

3 再帰的アルゴリズム

  • 3.1 はじめに
  • 3.2 再帰を使ってはならない場合
  • 3.3 再帰的プログラムの2つの例
  • 3.4 バックトラックアルゴリズム
  • 3.5 8人のクイーン問題
  • 3.6 安定な結婚の問題
  • 3.7 最適選択問題
  • 演習問題
  • 参考文献

4 動的な情報構造

  • 4.1 再帰的データ型
  • 4.2 ポインタ
  • 4.3 線形リスト
    • 4.3.1 基本操作
    • 4.3.2 整順リストとリストの再編成
    • 4.3.3 応用:位相的分類
  • 4.4 木構造
    • 4.4.1 基本的概念と定義
    • 4.4.2 2分木に対する基本操作
    • 4.4.3 挿入付きの木探索
    • 4.4.4 木からの削除
    • 4.4.5 挿入付きの木探索の解析
  • 4.5 平衡木
    • 4.5.1 平衡木への挿入
    • 4.5.2 平衡木からの削除
  • 4.6 最適探索木
  • 4.7 B木
    • 4.7.1 多分B木
    • 4.7.2 2分B木
  • 4.8 優先探索木
  • 演習問題
  • 参考文献

5 キー変換(ハッシング)

  • 5.1 はじめに
  • 5.2 ハッシュ関数の選択
  • 5.3 かち合い処理
  • 5.4 キー変換の解析
  • 演習問題
  • 参考文献

付録

  • A.ASCII文字集合
  • B.Modula-2の構造
  • 訳者付録:プログラミング言語Modula-2の概説

和文索引
欧文索引
プログラム一覧