/**
*
* temp = 下一个无序的数据
* 基本逻辑: temp之前的数据(全部有序)进行比较。
* 1:如果temp比其前一个元素大,那么算上temp,数据也是有序的。
* 2. 否则,将数组中元素右移,直到找到比temp小的第一个数据的位置j
* 3. 令arr[j + 1]=tmp。在合适的位置插入temp
* @param arr
*/
public static void selectSort(int[] arr) {
int tmp;
int i;
int j;
for (i = 1; i < arr.length; i++) {
tmp = arr[i];
for (j = i - 1; j >= 0 && arr[j] > tmp; j--) {
arr[j + 1] = arr[j];
}
arr[j + 1] = tmp;
}
}
网友评论