c_cpp 选择排序

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c_cpp 选择排序相关的知识,希望对你有一定的参考价值。

#include<bits/stdc++.h>
using namespace std;

int min (vector<int>v, int i){
    int min = i;
    for (int j=i+1; j<v.size(); j++){
        if (v[min]>v[j]){
            min = j;
        }
    }
    return min;
}

void SelectionSort (vector<int> &v){
    int n = v.size();
    for (int i=0; i<n; i++){
        int m = min (v,i);
        swap(v[i],v[m]);
    }
}

void print (vector<int>v){
    for (int i=0; i<v.size(); i++){
        cout<<v[i]<<" ";
    }
}

int main(){
    //freopen("ip.txt","r",stdin);
    //freopen("op.txt","w",stdout);
    int t;
    cin>>t;
    while(t--){
        int n;
        cin>>n;
        vector<int>v(n);
        for (int i=0; i<n; i++){
            cin>>v[i];
        }
        SelectionSort (v);
        print (v);
        cout<<endl;
    }
    return 0;
}

以上是关于c_cpp 选择排序的主要内容,如果未能解决你的问题,请参考以下文章

c_cpp 选择排序

c_cpp 选择排序

c_cpp 选择排序

c_cpp 选择排序的.cpp

c_cpp 对几乎排序(或K排序)的数组进行排序,插入排序

c_cpp 找到最小长度未排序的子阵列,排序使整个数组排序