以下是简单选择排序算法实现,效率低O(n^2)。
typedef int key_t;
#define swap(a,b) do{key_t tmp=a;a=b;b=tmp;}while(0)
void SimpleSelectSort(key_t array[], size_t n)
{
size_t swap_index;
for (size_t i = 0; i < n-1; i++) {
swap_index = i;
for (size_t j = i+1; j < n; j++) {
if (array[swap_index] > array[j])
swap_index = j;
}
if (i != swap_index)
swap(array[i], array[swap_index]);
}
}