选择排序思想:首先在未排序序列中找到最小(大)元素,存放到排序序列的起始位置,然后,再从剩余未排序元素中继续寻找最小(大)元素,然后放到已排序序列的末尾。以此类推,直到所有元素均排序完毕。
//选择排序 void select_sort(int* a, int n) { int min; int i, j; for (i = 0; i < n; i++) { min = i; for (j = i + 1; j < n; j++) { if (a[j] < a[min]) min = j; } if (min != i) { swap(a, i, min); } } } int main() { int arr[] = { 4, 6, 5, 8, 9, 3, 2, 1, 7 }; int size = sizeof(arr) / sizeof(int); select_sort(arr, size); for (int i = 0; i < size; i++) { cout << arr[i] << " "; } cout << endl; return 0; }