[ビンソート]←このソース→[クイックソート] /* ヒープソート */ /* 今日は2分木 ( ヒープ ) というデータ構造のうち、半順序木を使って行う、高速なソートのアルゴリズムであるヒープソートについて学びます。 2分木というデータ構造については、既に、学んでいますが、復習します。下記の node[ ] という配列の添字 0 は使いませんので、それは無視して下さい。数字を斜めの線で結んでいませんが、1と 2、1 と 3、2 と 4、2 と 5、3 と 6、3 と 7 が、線で結ばれているものとします。 int node[ ] = {0, 1, 2, 3, 4, 5, 6, 7, }; このようなデータ構造を、枝が一度に二つに分かれる木に見立てて、2分木といいます。一つ下の二つの要素を子、一つ上の要素を親といいます。一番上の要素を根といいます。つまり、2分木は逆さに生えている木です。