4−3:高度なソートアルゴリズムA
(データ構造にもとづくソート)
内容
- スライド 1 4−3:高度なソートアルゴリズムA(データ構造にもとづくソート)
- スライド 2 ヒープソート
- スライド 3 ヒープソートの方針
- スライド 4 ヒープとは
- スライド 5 2分木
- スライド 6 2分木においては、左と右の子を区別するので、
次の2つの2分木は同一ではない。
- スライド 7 木に関する用語
- スライド 8 完全2分木
- スライド 9 命題HP1(完全2分木と節点数)
- スライド 10 (2) (1)より、節点の総数は、次式で表される。
- スライド 11 ヒープの形
- スライド 12 ヒープ番号と配列での実現
- スライド 13 ヒープにおける親子関係
- スライド 14 証明
- スライド 15 :左子
- スライド 16 ヒープにおける挿入
- スライド 17 しかし、これだけだと、ヒープ条件を満たさない可能性
があるので、根のほうに向か...
- スライド 18 挿入の例
- スライド 19 0
- スライド 20 練習
- スライド 21 ヒープにおける削除
- スライド 22 しかし、これだけだと、ヒープ条件を満たさない可能性
があるので、葉のほうに向か...
- スライド 23 削除の例
- スライド 24 0
- スライド 25 ヒープソートの動き前半(ヒープへ値挿入)
- スライド 26 5
- スライド 27 1
- スライド 28 ヒープソートの動き後半(ヒープからの最小値削除)
- スライド 29 3
- スライド 30 9
- スライド 31 練習
- スライド 32 ヒープソートの実現
- スライド 33 命題HP3(ヒープソートの正当性)
- スライド 34 ヒープソートの計算量
- スライド 35 単一配列でのヒープソート
- スライド 36 単一配列に変更する方針
- スライド 37 ヒープ条件の変更
- スライド 38 ヒープ化(ヒープソート前半)
- スライド 39 配列
- スライド 40 最大値の削除とソート
- スライド 41 ヒープソート2の動き後半2
- スライド 42 練習
- スライド 43 単一配列ヒープの実現
- スライド 44 単一配列ヒープソートの計算量
- スライド 45 ヒープ化の高速化
- スライド 46 ヒープ化の高速化におけるアィディア
- スライド 47 イメージ
- スライド 48 高速ヒープ化の動き
- スライド 49 1
- スライド 50 0
- スライド 51 void heap_sort()
{
int i; ...
- スライド 52 命題HP4(高速ヒープ化の最悪時間計算量)
- スライド 53 このことより、ヒープ化に必要な最悪計算時間量を
と書くと次式が成り立つ...
- スライド 54 スライド54
- スライド 55 ヒープソートの計算量
Converted from Powerpoint Presentation to HTML by PPT2HTML AddIn.
PPT2HTML : by AGATASHI