<h3>選擇排序: 選擇排序比較時每次只會記錄下最小的(或者最大的)的位置,一輪比較完成之后才會進行對應位置和最小位置(或者最大位置)的交換操作,所以每一輪的比較只做一次交換操作。
//選擇排序
//原理:每次都找到當次最大的數,按大小順序依次放入數組相應位置
//比如:第一次先找到最大的數并記下其位置,如果其不在數組第一位,
//則將其與第一位交換,使最大數置于第一位
//第二次再循環查找第二大的數并記下其位置,如果其不在數組第二位,
//則將其與第二位交換,使最大數置于第二位
//依次類推.........................................
//第i次再循環查找第i大的數并記下其位置,如果其不在數組第 i位,
//則將其與第 i位交換,使最大數置于第 i位
//定義一個數組
int[] arr = {5, 2, 3, 6, 1};
//每每數組兩兩比較 例如五個數字 那么會比較四次
// 所以arr. length -1 就是比較的次數
for (int i = 0; i < arr.length - 1; i++) {
for (int j = i + 1; j < arr.length; j++) {
if (arr[i] > arr[j]) {
int temp = arr[i];
arr[i] = arr[j];
arr[j] = temp;
}
}
}
//輸出降序后的數組排序
for (int i : arr1) {
System.out.println(i);
}