选择排序的思想
:从所有序列中先找到最小的,然后放到第一个位置。之后再看剩余元素中最小的,放到第二个位置……以此类推,就可以完成整个的排序工作了。可以很清楚的发现,选择排序是固定位置,找元素。相比于插入排序的固定元素找位置,是两种思维方式。
<pre name="code" class="cpp">void SelectSort(int *arr, int len)
{
int min = 0;
for (int i = 0; i<len-1; i++) //len-1 防止j访问出界
{
min = i;
for (int j=i+1; j<len; j++)
{
if (arr[j] < arr[min])
{
min = j;
}
}
Swap(arr[i] ,arr[min]);
}
}