本文へスキップ

《 A Engineer Den 》知的冒険の旅へ出かけよう

超最速ソートアルゴリズム解説 【目次】 Explanation for Ultra fastest sorting algorithm


目次

  1. はじめに
  2. 第1章 ソートの基礎
    1. 1.1 ソートとは
    2. 1.2 安定性とは
    3. 1.3 内部/外部ソートとは
    4. 1.4 計算量 O記法とは
    5. 1.5 in-placeとは
    6. 1.6 ソートいろいろ
  3. 第2章 超最速ソートを求めて
    1. 2.1 プロジェクト始動
    2. 2.2 設計課題の発生
    3. 2.3 探索手法の工夫
      1. 2.3.1 線形探索では遅い
      2. 2.3.2 定石の二分探索
      3. 2.3.3 二分探索は速い
    4. 2.4 ソートの方法は
      1. 2.4.1 ソート時間の見積もり
      2. 2.4.2 バブルソートは遅くて使えない
      3. 2.4.3 クイックソートでも間に合わない
    5. 2.5 高速ソートを調査
  4. 第3章 ソート研究
    1. 3.1 基本型ソート
      1. 3.1.1 挿入ソート
      2. 3.1.2 選択ソート
      3. 3.1.3 交換ソート
    2. 3.2 改良型ソート
      1. 3.2.1 シェルソート
      2. 3.2.2 ヒープソート
      3. 3.2.3 クイックソート
    3. 3.3 比較しないソート
      1. 3.3.1 バケットソート
      2. 3.3.2 度数ソート
      3. 3.3.3 基数ソート
    4. 3.4 進化するソート
  5. 第4章 超最速ソート誕生
    1. 4.1 夢の中でヒント
      1. 4.1.1 比較しないソート
      2. 4.1.2 機械式ソート
      3. 4.1.3 ソート組み合わせ技
    2. 4.2 アイデアの原理
      1. 4.2.1 10進数2桁のソート
      2. 4.2.2 16進数2桁のソート
      3. 4.2.3 256進数2桁のソート
      4. 4.2.4 基数×度数ソート
    3. 4.3 究極を超えたソート誕生
    4. 4.4 アイデアで実現した
  6. 第5章 究極のソートとは
    1. 5.1 ダイレクトマップソート
    2. 5.2 概要説明
      1. 5.2.1 空間計算量
      2. 5.2.2 時間計算量
      3. 5.2.3 空間計算量の削減
      4. 5.2.4 ソートキーの拡張
    3. 5.3 プログラム構造
      1. 5.3.1 メイン部
      2. 5.3.2 度数分布作成
      3. 5.3.3 マップ作成
    4. 5.4 C++言語プログラムコード
  7. 第6章 アルゴリズムを選べ
    1. 6.1 新製品開発
    2. 6.2 たかがソート
    3. 6.3 されどソート
    4. 6.4 組み込み系では
    5. 6.5 クイックソートは速いか
    6. 6.6 ソートを選ぶ
    7. 6.7 軽量ソートで実現
  8. 第7章 どのソートが速いか
    1. 7.1 ソートの計算量
    2. 7.2 ソート時間の計測
      1. 7.2.1 計測方法
      2. 7.2.2 計測結果
    3. 7.3 ソート時間の結果
      1. 7.3.1 乱数データセットの計測結果
      2. 7.3.2 整列済みデータセットの計測結果
    4. 7.4 ソートアルゴリズムのまとめ
  9. おわりに
  10. 参考文献
  11. 索引
  12. 改訂履歴
  13. 著者紹介
  14. 著者書籍 一覧
  15. 奥付

ある技術者の書斎

探究心と好奇心の扉を開いて
知的冒険の旅に出かけよう