个人感觉和插入排序算法大同小异
代码实例:
//从小到大 #include "iostream" using namespace std; int i,j,sr; int min_number; int n; void print(int B[],int N){ for(int i=0;i<n;i++){ cout<<B[i]<<" , "; }cout<<endl; } void sort(int A[],int N){ for(i=0;i<N-1;i++) { min_number=A[i]; sr=i; for (j = i; j < N ; j++) {//找出最小的数 if (min_number>A[j]) { min_number=A[j]; sr=j; } } //交换数字 A[sr]=A[i]; A[i]=min_number; print(A, N); } } int main(){ cout<<"请输入n:"; cin>>n; int a[n]; for(i=0;i<n;i++){ cout<<"请输入第"<<i+1<<"数:"; cin>>a[i]; } sort(a,n); return 0; } —————————————————————————————————————————————— 请输入n:5 请输入第1数:5 请输入第2数:4 请输入第3数:3 请输入第4数:2 请输入第5数:1 1 , 4 , 3 , 2 , 5 , 1 , 2 , 3 , 4 , 5 , 1 , 2 , 3 , 4 , 5 , 1 , 2 , 3 , 4 , 5 ,