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

1493 ワード

説明:

  • アレイの最大値を置き換えます.
  • の最初の値と最高値を変更します.
  • 以降の位置まで、1~3回配列の末尾を繰り返します.
  • 時間の複雑さ


    O(n^2)

    コード#コード#

    #include <iostream>
    #include <vector>
    using namespace std;
    void selection_sort(vector<int> &nums) {
        int min_index, temp;
        for (int i = 0; i < nums.size(); i++){
            min_index = i;
            for(int j = i+1; j < nums.size(); j++) {
                if (nums[j] < nums[min_index]) {
                    min_index = j;
                }
            }
            temp = nums[min_index];
            nums[min_index] = nums[i];
            nums[i] = temp;
        }
    }
    int main() {
        vector<int> nums = {5,4,3,2,1};
        selection_sort(nums);
    
        for (int i = 0; i < nums.size(); i++) {
            cout << nums[i] << " ";
        }
    }