選擇排序---簡單選擇排序
阿新 • • 發佈:2018-11-19
將陣列第一個數字,依次和陣列後面的數字比較,將小的數字放到最前面。。
1 public class SelectSort { 2 public static void main(String[] args) { 3 int[] arr=new int[]{3,8,2,9,4,1,6,8,10}; 4 System.out.println(Arrays.toString(arr)); 5 selectSort(arr); 6 System.out.println(Arrays.toString(arr));7 } 8 9 public static void selectSort(int[] arr){ 10 //Z遍歷所有的數 11 for(int i=0;i<arr.length-1;i++){ 12 int minIndex=i; 13 //把當前遍歷的數和後面所有的數依次進行比較,並記錄下最小的數的下標。 14 for(int j=i+1;j<arr.length;j++){ 15 //如果後面比較的數比記錄的最小的數小 16if(arr[minIndex]>arr[j]){ 17 //記錄下最小 的那個數的下標 18 minIndex=j; 19 } 20 } 21 //如果最小的數和當前遍歷數的下標不一致,說明下標為minIndex的數比當前遍歷的數更小 22 if(i!=minIndex){ 23 int temp=arr[i]; 24 arr[i]=arr[minIndex];25 arr[minIndex]=temp; 26 } 27 28 } 29 30 } 31 32 } 33