轉載:http://blog.csdn.net/feng2qing/article/details/53860685
排序思想:
相鄰元素兩兩比較,大的往後放,第一次完畢,最大值出現在了最大索引處(每比較完一趟,就選出一個最大值放到了後面),同理繼續可以得到一個排好序的數組
排序圖解:
排序規則:
兩兩相比,大的往後放
每一次比較晚後,下一次比較時就會減少一個元素比較
第一次比較,有0個元素不參與比較
第二次比較,有2個元素不參與比較
第三次比較,有2個元素不參與比較
…
總共需要比較數組長度 - 1 次
代碼實現:
public static void selectSort (int array[]) {
for (int i = 0;i < array.length - 1; i ++) {
for (int j = i + 1;j < array.length;j ++) {
if (array[j] < array[i]) {
int temp = array[i];
array[i] = array[j];
array[j] = temp;
}
}
}
}
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11