选择排序算法的原理在于:
将序列看做一个已经排序的序列和一个未排序的序列,每次遍历的当前元素,都是无序序列的第一个元素,将它和序列中最小的值进行交换,这样就是在遍历位置上这个数,就是已经排好的数、
int SelectSort(int a[],int n){
int temp = 0;
int minIndex = 0;
if(a == nullptr)
return 0;
for(int i = 0; i < n -1; ++i)
{
minIndex = i;//i就是当前要比较的元素,其实它就是无序序列的第一个元素
for(int j = i+1; j < n; ++j){
if(a[j] < a[minIndex])
minIndex = j;
}
//所以这里要将无序序列的第一个元素和最小的元素进行交换
temp = a[minIndex];
a[minIndex] = a[i];
a[i] = temp;
}
}