一、选择排序
1、问题:把n个整数从小到大排序
2、思想:从余下的未排序的部分整数中,挑选最小整数放在前面已排序部分的后面。即从未排序的部分整数中,挑选最小的整数放在未排序部分的最前面的一个位置
选择排序=找最小整数+交换至合适位置
3、代码:
void SelectionSort(int List[], int N)
{
for (int i = 0; i < N; ++i)
{
int MinPosition = ScanForMin(List, i, N-1);//从List[i],List[N-1]中找出最小元,并将其位置赋予MinPosition
Swap(List[i], List[MinPosition]);//将未排序部分的的最小元放在有序部分的后面
}
}