选择排序基本思路
基本思路就是遍历两次,外层循环从0到n-1,内层循环选出最小的值与当前值进行交换,保证最小的值在前面。
void selectionSort(vector&arr) { int n=arr.size(); int minIndex=0; for(int i=0;i arr[j]) { minIndex=j; } } swap(arr[i],arr[minIndex]); } }
二元选择排序算法
使用二元选择排序,每轮选择记录最小值和最大值,可以把数组需要遍历的最大值最小值缩小一倍。将最小值交换到首位,最大值交换到末尾
void selectionSort2(vector&arr) { int minIndex,maxIndex; int n=arr.size(); for(int i=0;i arr[maxIndex]) { maxIndex=j; } if(arr[j]



