用简单选择排序对序列{56,43,23,11,65,78,33}进行升序排序,写出每一趟的排序结果。
// // Created by John on 2021/02/24. // 选择排序 // #include<iostream> using namespace std; template<class ElemType> void SelectSort(ElemType* A,int n){ int min,i,j;//数组元素的个数 for ( i = 0; i < n - 1; ++i) {//进行n-1趟选择 min = i; for ( j = i + 1; j < n; ++j) { if (A[min] > A[j]) min = j; } //交换元素 if (min != i) { ElemType temp = A[min]; A[min] = A[i]; A[i] = temp; } //打印检查当前趟的元素排列情况 cout<<"第"<<i+1<<"趟的结果:"; for (int k = 0; k < n; ++k) { cout<<A[k]<<" "; } cout<<endl; } }