選択ソート(選択ソート)簡単なソートアルゴリズムです。まず、最小ソートされていないシーケンス(大)要素、開始位置に保存されているソート順序を見つけ、その後、残りのソートされていない要素から最小(大)の要素を探し、ソートされた順序でそれを置くために引き続き:それは動作します終わり。ように、すべての要素がソートされるまで。
2.1アルゴリズムの説明
ダイレクト選択ソートNレコードは、直接選択整然としたソート結果を介してN-1回であってもよいです。アルゴリズムは次のように説明されています。
- 初期状態:領域乱れが空である領域を命じ、R [1..nの]です。
- I(I = 1,2,3 ... N-1)開始を注文実行、現在の順序付けられた領域と不規則領域はR [1..i-1]およびR(i..n)でした。現在のソート無秩序ゾーンから旅行 - R [1..i]とR [I + 1となるようR [K]選択された最小記録鍵は、それは、最初のレコード無秩序領域Rと交換します..n)レコードの数とレコード疾患の新たな面積を削減する新しい注文の数を増加させるために変更されました。
- N-1旅の終わり、規則的な配列。
<スクリプトタイプ= "テキスト/ javascriptの"> VARの選択ソート= {}; SelectionSort.arr = []; SelectionSort.init =関数(){ VAR ARR = this.arr。 arr.length = 0; arr.push(3)。 arr.push(5)。 arr.push(2)。 arr.push(1)。 arr.push(9)。 arr.push(11)。 arr.push(25)。 arr.push(35)。 arr.push(4)。 arr.push(19)。 arr.push(22)。 arr.push(98)。 arr.push(99)。 arr.push(100)。 } =ファンクションSelectionSort.show() { 用(VAR I = 0;私はthis.arr.lengthを<; Iは++) { にconsole.log(this.arr [I]); } } SelectionSort.Sort =関数(ARR) { VAR arr.length = LEN; VAR minIndex、TEMP; (; IがLEN <I ++はVAR I = 0)のための { minIndex = I; // ARR [I] = ARR [minIndex]アルゴリズムの目的は、現在の要素の残りの要素を配置することです最小。 最小値を取得するためのすべての要素の現在の位置の後ろの位置に// J = + 1を比較することによって。 以下のために(; J <LEN; VAR = Iは、J 1 + Jを++) { //の最小数を見つけます。 IF(ARR [J] <ARR [minIndex]) { minIndex = J; //インデックスの最小数 } } TEMP = ARR [J]; ARR [I] = ARR [minIndex];現在のソートに割り当てられた最小のインデックスの//数要素 [minIndex] = TEMP ARR; //は、比較のために最小屈折率で最小値に移動します。 } } SelectionSort.init() はconsole.log( "未分類ARRY"); SelectionSort.show() はconsole.log( "ソートARRY"); SelectionSort.arrary = SelectionSort.Sort(SelectionSort.arr); SelectionSort.show (); </ SCRIPT>