/**
* 选择排序
* 选择排序(Selection sort)是一种简单直观的排序算法。
* 它的工作原理是每一次从待排序的数据元素中选出最小(或最大)的一个元素,存放在序列的起始(末尾)位置,直到全部待排序的数据元素排完。
* 选择排序是不稳定的排序方法(比如序列[5, 5, 3]第一次就将第一个[5]与[3]交换,导致第一个5挪动到第二个5后面)。
*/
public static void selectOrder(){
int[] arr = {2,3,1,4,3,5,1,6,1,2,3,7,2,3};
//当前趟数最大值下标
int index;
//交换变量
int temp;
for (int i = 0; i < arr.length - 1; i++) {//控制循环的趟数
index = 0;//新的趟数,将下标置为0
//内层循环控制遍历数组的个数,并得到最大值的下标
for (int j = 0; j < arr.length - i; j++) {
if(arr[j] > arr[index]){
index = j;
}
}
//交换
temp = arr[index];
arr[index] = arr[arr.length -1 -i];
arr[arr.length - 1 - i] = temp;
}
StringBuilder sb = new StringBuilder();
for (int i = 0; i < arr.length; i++) {
if(i != arr.length - 1 ){//最后一个元素
sb.append(arr[i]).append(",");
}else{
sb.append(arr[i]);
}
}
System.out.println(sb);
}
参考链接:https://mp.weixin.qq.com/s/S0ITzTz2MVteF8iLdUutGQ