选择排序的思想
在待排序的序列中,将第一个元素依次和后面的每一个元素进行比较,将最小值(或者最大值)放在已排序的序列的末尾,以此类推,直到所有元素按照从小到大(或者从大到小)顺序排列
代码如下:
import java.util.Arrays;
public class SelectionSort {
public static void main(String[] args) {
//静态初始化数组
int[] arr = {12, 56, 1, 33, 28};
//输出排序前的数组
System.out.println("排序前:");
System.out.println(Arrays.toString(arr));
//调用选择排序方法
selectionSort(arr);
//输出排序后的数组
System.out.println("排序后:");
System.out.println(Arrays.toString(arr));
}
//选择排序方法
private static void selectionSort(int[] arr) {
//一共需要排序arr.length - 1次
for (int i = 0; i < arr.length; i++) {
//每一次排序中,将第一个元素和后面的元素依次比较
for (int j = i + 1; j < arr.length; j++) {
//如果后面的元素值比第一个元素值小,则将两个元素进行交换
if (arr[j] < arr[i]) {
//定义中间变量
int temp = arr[i];
arr[i] = arr[j];
arr[j] = temp;
}
}
}
}
}