一、选择排序
选择排序的思想是一趟循环,选择出最大(小)的数排到合适的位置。就是每一次循环排好一个数。
二、算法实现
//============选择排序 选择最小的数放在合适的位置==============
int SelectMinKey(int i){
int min = sqTable[i];
int index = i;
for (int j = i+1; j <= length; j++)
{
if (sqTable[j] < min)
{
min = sqTable[j];
index = j;
}
}
return index;
}
void SelectSort(){
for (int i = 1; i <= length-1; i++)
{
int j = SelectMinKey(i);//从[i...length]位置上选择最小的数
if (i!=j)
{
Swap(i,j);
}
}
}