選択ソートは、配列から最小の数値を見つけて最初の位置に配置することで機能する積極的なアルゴリズムです。次に走査される配列は、最小の番号が存在する次のインデックスから開始されます。
この概念をより明確に説明するために例を挙げてみましょう。
配列 {6, 3, 8, 12, 9} があり、この配列の最小要素は 3 です。したがって、最初の位置に 3 を置くと、その後の配列は {3, 6, 8, 12, 9} のようになります。ここで再び最小の数値を見つけますが、今回は 3 がその場所にあるため、検索では考慮しません。次に小さい要素 6 を見つけ、2 番目の位置に 6 を含む配列を作成し、配列がソートされるまで配列内を再度検索します。
選択並べ替えアルゴリズムの仕組み -
選択並べ替えアルゴリズムは次の手順に従います
配列 {20, 12, 23, 55,21}# を考えてみましょう。
#include <stdio.h> int main() { int arr[10]={6,12,0,18,11,99,55,45,34,2}; int n=10; int i, j, position, swap; for (i = 0; i < (n - 1); i++) { position = i; for (j = i + 1; j < n; j++) { if (arr[position] > arr[j]) position = j; } if (position != i) { swap = arr[i]; arr[i] = arr[position]; arr[position] = swap; } } for (i = 0; i < n; i++) printf("%d\t", arr[i]); return 0; }
0 2 6 11 12 18 34 45 55 99
以上が選択ソートのための C プログラムの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。