基本的排序算法,每次找到一个最值然后交换。
值得主要的是,有些人实现的时候每次比较后都交换元素,这其实是不必要的,只需记下下标,在一趟结束后再交换即可。
public static void selectionSort(int[] A){ for(int i = 0; i < A.length-1; i ++){ int k = i; for(int j = i+1; j < A.length; j ++){ if(A[j] < A[k])k = j; } if(k != i){ swap(A, i, k); } } }