package sf;
/**
* 简单选择排序
*
* 在要排序的一组数中,选出最小(或者最大)的一个数与第1个位置的数交换;然后在剩下的数当中再找最小(或者最大)
* 的与第2个位置的数交换,依次类推,直到第n-1个元素(倒数第二个数)和第n个元素(最后一个数)比较为止。
* @author kali
*
*/
public class Sort02 {
public static void main(String[] args) {
int[] array={2,4,3,9,6,4,2,1,9};
Sort02 sort=new Sort02();
sort.sortArray(array);
}
void sortArray(int[] array){
for(int i=1;i<array.length;i++){
int min=getMin(array ,i);
if(array[i-1]>array[min]){
int temp=array[min];
array[min]=array[i-1];
array[i-1]=temp;
}
System.out.println(">>>"+i);
toString(array);
}
}
//返回最小值下标
int getMin(int[] array ,int i){
int min=i;
for(;i<array.length-1;i++){
if(array[i+1]<array[min]){
min=i+1;
}
}
return min;
}
static void toString(int[] array){
for(int i=0;i<array.length;i++){
System.out.print(array[i]+" ,");
}
System.out.println(" ");
}
}
转载请注明原文地址: https://ju.6miu.com/read-1000295.html