一、选择排序特点:
一个数分别和后面所有待排序的数进行比较
时间复杂度:O(n2)
稳定性:不稳定
空间效率:只需要一个辅助空间
二、选择排序图形:
三、选择排序的代码
10个数进行选择排序
交换式:
//选择排序
@Test
public void selectSort(){
int[] a = new int[]{3,1,4,6,5,9,7,2,8,0};
for(int i =0;i<a.length -1;i++){
for(int j = i+1;j<a.length;j++){
if(a[i] > a[j]){
int temp = a[i];
a[i] = a[j];
a[j] =temp;
}
}
}
for (Integer yuansu:a){
System.out.println(yuansu);
}
}
移动式
@Test
public void selectSort(){
int[] a = new int[]{3,1,4,6,5,9,7,2,8,0};
for(int i =0;i<a.length -1;i++){
int min =i;
for(int j = i+1;j<a.length;j++){
if(a[min] > a[j]){
min =j;
}
}
int temp = a[i];
a[i] = a[min];
a[min] =temp;
}
for (Integer yuansu:a){
System.out.println(yuansu);
}
}