选择排序应该是我们接触的最早也是最简单的一种算法了,思路就是打擂台,每次都是从剩余元素中选择一个最大的(最小的)元素,顺序排放在对应的位置,一直循环即可完成选择排序。
核心代码如下:
void SelectSort(vector<int> &Input)
{
int size = Input.size();
for (int i = 0; i < size; i++)
{
int min = 999999;
int minIndex = i;
for (int j = i; j < size; j++)
{
if (Input[j] < min)
{
min = Input[j];
minIndex = j;
}
}
int temp = Input[i];
Input[i] = Input[minIndex];
Input[minIndex] = temp;
}
}