Java--选择排序
思想
从左向右遍历数组,让每个数组元素依次作为基准,将基准数组扫描一次,若有元素比基准小则标记这个元素,若后续元素存在比此元素更小的,则标记更小的元素,遍历完此次数组之后,交换基准和标记数组的内容,循环数组长度-1次即可排好序。
代码
public class Test1 {public static void main(String[] args) {int[] arr ={12,54,1,23,45,13,45,11,54,321,465,1321,564,123,498,4564,798, 1123};selectionSort(arr);for (int i=0;i<arr.length;i++){System.out.println(arr[i]);}}public static void selectionSort(int[] arr) {int len = arr.length;for (int i = 0; i < len - 1; i++) {int minVal = i;for (int j = i + 1; j < len; j++) {if (arr[minVal] > arr[j]) {minVal = j;}}if (minVal != i) {int tmp = arr[i];arr[i] = arr[minVal];arr[minVal] = tmp;}}} }