一、选择排序的介绍
简单来说就是,先从数组中找到最小的那个数(先默认第一个数为最小的),对他进行标记(使用一个变量存储它的下标,遇到比他小的更新下标),直到找到数组中的最后一个数,然后将最小的那个数与第一个数进行交换。
接下来我们使用动画演示进行解释
下面的是网址跟截屏以及如何使用
https://visualgo.net/en/sorting
二、进行代码演示
/*
选择排序指的是先从数组中找到最小的那个数并标记,直到找到最后一位,再将最小的那个数与第一个数进行交换,如此反复
*/
import java.util.Arrays;
public class XuanZeTest1 {
public static void main(String[] args) {
int[] a=new int[]{7, 3, 9, 4, 1};
System.out.println("排序前:"+Arrays.toString(a));
//第一层循环。保证每一次循环结束,第i个数是最小的
for(int i=0;i<a.length-1;i++){
int x=i; //开始时先默认第一个值最小,用x进行标记
for(int j=i;j<a.length;j++){
//对数组中每个数进行比较,如果比默认值小,进行替换
if(a[x]>a[j]){
x=j;
}
//判断是不是找到最后一个数字了
if(j==a.length-1){
//将最小的那个数与第一个数进行交换
int y=a[i];
a[i]=a[x];
a[x]=y;
}
}
}
System.out.println("排序后:"+ Arrays.toString(a));
}
}
标签:int,最小,选择,Arrays,找到,数组,排序
From: https://www.cnblogs.com/ndmtzwdx/p/18494553