public class code2 { public static void main(String[] args) { int[] x = {37, 89, 23}; for (int z = 0; z < x.length - 1; z++) { int minIndex = z; for (int i = z+1; i < x.length; i++) { if (x[i] < x[minIndex]) { minIndex = i; } } if (minIndex != z) { int tem = x[z]; x[z] = x[minIndex]; x[minIndex] = tem; } } for (int i = 0; i < x.length; i++) { System.out.println(x[i]); } } }
这串代码是数组中的选择排序,它的原理是:
先假设一个数组中下标为0 的元素为最小的数值,我们通过循环来比较下标为0 的数值与数组中的其它数值进行比较,如果有比他小的数值,那我们就把它的下标赋给我们先前所定义的变量中minIndex
最外层的循环是我们控制在数组中的第几位放什么数值。并且控制我们的轮回的次数,因为有一些已经排好的数值我们就不要重新把他们排序。
下面那个if语句就是把它们之间的位置调换一下,借助一个其他的变量来完成。
标签:minIndex,Java,int,数值,++,数组,排序 From: https://www.cnblogs.com/jianchiziji/p/17923340.html