基本思想
在要排序的一组数中,选出最小(或者最大)的一个数与第一个位置的数交换;然后在剩下的数当中再找最小(或者最大)的与第2个位置的数交换,依次类推,知道n-1个元素(倒数第二个数)和第n个元素(最后一个数)比较为止。
private static void SelectSort(int [] arr)
{ int key, temp; for (int i = 0; i < arr.Length; i++) { key = SelectMin(arr, i); if (key != i) { temp = arr[i]; arr[i] = arr[key]; arr[key] = temp; } } }private static int SelectMin(int [] arr,int i)
{ int k = i; for (int j = i+1; j < arr.Length; j++) { if (arr[k] > arr[j]) k = j; } return k; }