1.选择排序
#include<bits/stdc++.h>
using namespace std;
int main(){
const int N=1e5+50;
int a[N];
int n;
cin>>n;
for(int i=1;i<=n;i++)cin>>a[i];
for(int i=1;i<n;i++){
int minn=i;
for(int j=i;j<=n;j++){
if(a[j]<a[minn])minn=j;
}
swap(a[minn],a[i]);
}
for(int i=1;i<=n;i++)cout<<a[i]<<' ';
}
2.快速排序
#include<bits/stdc++.h>
using namespace std;
int main(){
long long a[111117];
int n;
cin>>n;
for(int i=0;i<n;i++){
cin>>a[i];
}
sort (a,a+n);
for(int i=0;i<n-1;i++){
cout<<a[i]<<' ';
}
cout<<a[n-1];
}
3.冒泡排序
#include<bits/stdc++.h>
using namespace std;
int main(){
const int N=1e5+50;
int a[N];
int n;
cin>>n;
for(int i=1;i<=n;i++)cin>>a[i];
for(int i=1;i<n;i++){
if(a[i+1]>a[i]) swap(a[i+1],a[i]);
}
for(int i=1;i<=n;i++)cout<<a[i]<<' ';
}
归并排序太复杂啦,先不说了,求评论,求关注~~