「●おいこみソート」の編集履歴(バックアップ)一覧はこちら
「●おいこみソート」(2008/10/13 (月) 17:11:13) の最新版変更点
追加された行は緑色になります。
削除された行は赤色になります。
*情報
作者名:ゆちボン
引用元:[[なでしこプログラム掲示板「なでしこでソートプログラム集」>http://www.himanavi.net/cgi/nade-bbs/cbbs.cgi?mode=al2&namber=940&rev=&no=0]]
リンク:[[●コムソート]]、[[●バブルソート]]、[[双方向バブルソート]]
*概要
正式名称不明。
僕は「最大最小値ソート」「おいこみソート」と呼んでいます。
バブルソートの改良型で、1回のスキャンで最大値、最小値を見つけて、最後に交換します。
繰り返す量はバブルの半分。
安定:×
速度:最低で、o(n^2)
*サンプルプログラム
200回、テスト[回数-1]は乱数(200)
テストをおいこみソート。
テストをメモ記入。
おわり
*//本体
●おいこみソート(Aを)
max=配列要素数(A)
max_S=0
min_S=0
iを0からINT(max/2)まで繰り返す
max_S=max-i
min_S=i
kをiからmax-iまで繰り返す
もし、A[k]>A[max_S]なら、max_S=k
もし、A[k]<A[min_S]なら、min_S=k
'最大値の交換
もし、max-i<>max_Sなら
tmp=A[max_S]
A[max_S]=A[max-i]
A[max-i]=tmp
'最小値の交換
もし、i<>min_Sなら
tmp=A[min_S]
A[min_S]=A[i]
A[i]=tmp
Aで戻る。
----
#comment()
----
*情報
作者名:ゆちボン
引用元:[[なでしこプログラム掲示板「なでしこでソートプログラム集」>http://www.himanavi.net/cgi/nade-bbs/cbbs.cgi?mode=al2&namber=940&rev=&no=0]]
リンク:[[●コムソート]]、[[●バブルソート]]、[[●双方向バブルソート]]
*概要
正式名称不明。
僕は「最大最小値ソート」「おいこみソート」と呼んでいます。
バブルソートの改良型で、1回のスキャンで最大値、最小値を見つけて、最後に交換します。
繰り返す量はバブルの半分。
安定:×
速度:最低で、o(n^2)
*サンプルプログラム
200回、テスト[回数-1]は乱数(200)
テストをおいこみソート。
テストをメモ記入。
おわり
*//本体
●おいこみソート(Aを)
max=配列要素数(A)
max_S=0
min_S=0
iを0からINT(max/2)まで繰り返す
max_S=max-i
min_S=i
kをiからmax-iまで繰り返す
もし、A[k]>A[max_S]なら、max_S=k
もし、A[k]<A[min_S]なら、min_S=k
'最大値の交換
もし、max-i<>max_Sなら
tmp=A[max_S]
A[max_S]=A[max-i]
A[max-i]=tmp
'最小値の交換
もし、i<>min_Sなら
tmp=A[min_S]
A[min_S]=A[i]
A[i]=tmp
Aで戻る。
----
#comment()
----