JAVA实现选择排序算法
-
public class wdnmd2 { public static void main(String[] args) { int[] arr = {8, 2, 1, 5, 3, 0}; sort(arr); System.out.println(Arrays.toString(arr)); } public static void sort(int[] arr) { for (int i = 0; i < arr.length; i++) { int min = i; for (int j = i + 1; j < arr.length; j++) { if (arr[j] < arr[min]) { min = j; } } int t = arr[i]; arr[i] = arr[min]; arr[min] = t; } } }
运行结果:0,1,2,3,5,8
解析:**从当前未排序的整数中找一个最小的整数,将它放在已经排序的整数列表的最后,**也就是说从索引为0的位置开始每次和其他的数比较,每次将小于0索引所对应的元素的索引赋值给min,然后j+1让arr[min]和arr[j]进行比较,每次将最小的赋值给min,循环结束后进行将最小的元素和索引为0的元素值交换后索引加1进行下一次循环
要点:选最小的放在左边
图片解析: