上一篇我们描述了冒泡排序的实现,本篇简单实现一下选择排序;
array[0]用来存储临时数据;
void select_sort(u32 *array, u32 len)
{
u32 i = 0, j = 0,cur = 0;
for(i = 1; i <len; i++){
cur = i;
for(j = i+1;j<len;j++){
if(array[j]<array[i]){
cur = j;
}
}
if(cur != i)
{
array[0] = array[i];
array[i] = array[cur];
array[cur] = array[0];
}
}
return;
}