选择排序基本思想,先假定一个最小值,然后和后面的每一个数进行比较,如果比预设的最小值还小,则重置最小值,和最小索引,最后交换数值
public class SelectSort {
public static void main(String[] args) {
int[] arr = {5, 9, 7, 4, 95};
selectSort(arr);
System.out.println(Arrays.toString(arr));
}
public static void selectSort(int[] arr) {
for (int i = 0; i < arr.length-1; i++) {
int minIndex = i;
int min = arr[minIndex];
for (int j = i + 1; j < arr.length; j++) {
if (arr[j] < min) {
minIndex = j;//重置最小值索引
min = arr[j];//重置最小值
}
}
if (minIndex != i) {//如果发生交换,交换两个值
arr[minIndex] = arr[i];
arr[i] = min;
}
}
}
}
原文:https://www.cnblogs.com/qingfeng5438/p/13629007.html