选择排序 java实现
首先在未排序序列中找到最小(大)元素,存放到排序序列的起始位置。
再从剩余未排序元素中继续寻找最小(大)元素,然后放到已排序序列的末尾。
重复第二步,直到所有元素均排序完毕。
/**
* @Description:(选择排序)
*
*/
/**
* @Description:(选择排序)
*
*/
public class SelectionSort {
public static void selectionSort(int arrays[]) {
int temp;
int minIndex;
int x=1;
System.out.print(" 数组: ");
for(int array : arrays) {
System.out.print(array+"\t");
}
System.out.println();
for(int i=0;i<arrays.length-1;i++) {
minIndex = i;
for(int j=i+1;j<arrays.length;j++) {
if(arrays[j]<arrays[minIndex]) {
minIndex = j;
}
}
temp = arrays[i];
arrays[i] = arrays[minIndex];
arrays[minIndex] = temp;
System.out.print("第"+x+"次交换:");
for(int array : arrays) {
System.out.print(array+"\t");
}
x++;
System.out.println();
}
}
public static void main(String[] args) {
int[] arrays = {5,8,1,4,1,3,6,5,7};
selectionSort(arrays);
System.out.print(" 结果: ");
for(int array : arrays) {
System.out.print(array+"\t");
}
}
}