SortHeapArray

一次元配列をソート(並び替え)【HeapSort高速版】

一次元配列を昇順または降順にソート(並び替え)します。

ソートのアルゴリズムに「HeapSort(ヒープソート)」を用いているため、
配列の要素が多い場合は SortArray より高速に処理できることが多いです。
(ソート結果に違いはありません)

Array:
    arValue[5](0);

Vars:
    varResult(0);

arValue[1] = 15;
arValue[2] = 56;
arValue[3] = 21;
arValue[4] = 99;
arValue[5] = 32;

Print( arValue[1], " ", arValue[2], " ", arValue[3], " ", arValue[4], " ", arValue[5] ); // [1]

Condition1 = SortHeapArray( arValue, 5, 1 );
Print( arValue[1], " ", arValue[2], " ", arValue[3], " ", arValue[4], " ", arValue[5] ); // [2]

Condition1 = SortHeapArray( arValue, 5, -1 );
Print( arValue[1], " ", arValue[2], " ", arValue[3], " ", arValue[4], " ", arValue[5] ); // [3]

【結果】
[1] 15.00 56.00 21.00 99.00 32.00
[2] 99.00 56.00 32.00 21.00 15.00
[3] 15.00 21.00 32.00 56.00 99.00

定義

bool SortHeapArray( o_arTarget, dblSize, dblHiLo )

灰色エリアをクリックすると全選択状態になります

引数

I/O 名前(推奨) 内容
O 配列(数値) arTarget 対象の配列
I double dblSize 対象配列の要素数
I double dblHiLo ソートの順序(1: 降順、-1: 昇順)

戻り値

内容
bool 成功した時「true」(SortArrayと型が異なるので注意!ソートされた配列が戻り値として返されるわけではなく、引数で指定した配列がそのまま変化します)

使用上の注意

・1次元の配列にのみ使用できます。
・配列要素は[1]からの対応になります。(要素[0]は無視されるので注意)

関連記事