一、执行原理:给定数组:int[] arr={里面n个数据};
第1趟排序,在待排序数据arr[1]~arr[n]中选出最小的数据,将它与arrr[1]交换;
第2趟,在待排序数据arr[2]~arr[n]中选出最小的数据,将它与r[2]交换;
以此类推,第i趟在待排序数据arr[i]~arr[n]中选出最小的数据,将它与r[i]交换,直到全部排序完成。
二、编码实现
import java.util.Arrays;
public class test03 {
public static void main(String[] args) {
//选择排序
int[] a = {8,4,2,1,23,344,12};
int index;
for (int i = 0; i < a.length - 1; i++) {
index = i;
for (int k = i; k < a.length; k++){
if (a[k] < a[index]){
index = k;
}
}
int tmp = a[i];
a[i] = a[index];
a[index] = tmp;
}
System.out.println(Arrays.toString(a));
for (int i = 0; i < a.length; i++) {
System.out.print(a[i]+"\t");
}
}
}
三、运行结果