ヒープソート
二分ヒープを使うソートアルゴリズム
O(N * logN)
最初に配列からヒープを構築する
heapify() ... ヒープを構築する作業
ヒープは平衡二分木なので、木の高さはlogNにとどまる。logN回ループ
最大値を取り出す中でこれがN回行われる
クイックソートよりは遅いらしい
参照の局所性が良くない
in-place
heapify関数の実装を行えば結構簡単
選択ソートの早い版
JavaScriptでヒープソートを実装する
C言語でヒープソートを書く