<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);
}