1. 程式人生 > >排序之選擇算法

排序之選擇算法

sort all 最小 strong pan emp min 末尾 left

要點:

簡單選擇排序是一種選擇排序

選擇排序:每趟從待排序的記錄中選出關鍵字最小的記錄,順序放在已排序的記錄序列末尾,直到全部排序結束為止。

簡單排序處理流程:

(1)從待排序序列中,找到關鍵字最小的元素;

(2)如果最小元素不是待排序序列的第一個元素,將其和第一個元素互換;

(3)從余下的 N - 1 個元素中,找出關鍵字最小的元素,重復(1)、(2)步,直到排序結束。

核心代碼:

 1 public void selectionSort(int[] list) {
 2 
 3     for (int i = 0; i < list.length - 1; i++) {
4 5 int min = i; // 用來保存最小值得索引 6 7 8 9 // 尋找第i個小的數值 10 11 for (int j = i + 1; j < list.length; j++) { 12 13 if (list[index] > list[j]) { 14 15 min = j; 16 17 } 18 19 } 20 21 22 23 // 將找到的第i個小的數值放在第i個位置上
24 int temp = 0; 25 temp = list[index]; 26 27 list[index] = list[i]; 28 29 list[i] = temp; 30 31 32 33 System.out.format("第 %d 趟:\t", i + 1); 34 35 printAll(list); 36 37 } 38 39 }

排序之選擇算法