ソートアルゴリズムの選択


ソートの選択


1つのアルゴリズム
  • は、この順序で要素を配置する位置を指定し、配置する要素を選択する.

    プロセス

  • で指定された配列で最小値を探します.
  • で選択した値を現在の順序の値に置き換えます.
  • は次の位置に移動します.
  • は、このプロセスを配列終了位置の前に繰り返す.
  • 特長

  • の利点
    -実装が容易です.
    -その場で並べ替えアルゴリズム.余分なメモリは必要ありません.
  • の欠点
    -不安定なソート(Unstable Sort).
    ソート比較回数は多いが,大量の交換が必要な資料状態では比較的効率的である.
  • コード#コード#


    実装(C+)

    void SelectionSort(int arr[], size_t arr_size) {
    
    	int min_idx;
    
    	for (size_t i = 0; i < arr_size-1; i++) {
    
    		min_idx = i;
    
    		for (size_t j = i + 1; j < arr_size; j++)
    			if (arr[j] < arr[min_idx])
    				min_idx = j;
    
    		swap(arr[i], arr[min_idx]);
    	}
    }