选择排序算法
循环一次从参与比较的数据中找出数据中最小的数与最前面的数进行交换,效率比冒泡排序效率高,它的每一次交换都是有意义的(交换位置的次数)
关键点在于如何去找一堆数据中最小的元素
代码
/*
选择排序
*/
public class ChooseSort {
public static void main(String[] args) {
int [] a={3,1,6,2,5};
for (int i = 0; i < a.length-1; i++) {
int min=i;
//i是最左边元素的下标
for (int j = i+1; j <a.length ; j++) {
if (a[j]<a[min]){
min=j;
}
}
if (min != i){
int temp ;
temp=a[min];
a[min]=a[i];
a[i]=temp;
}
}
for (int i = 0; i <a.length ; i++) {
System.out.println(a[i]);
}
}
}