public class Test {
/**
* 直接选择排序算法实例
*/
public static void main(String[] args) {
int[] array={23,12,445,343};
//创建直接排序类的对象
Test sorter=new Test();
//调用排序对象的方法将数组排序
sorter.sort(array);
}
//直接选择排序法 要排序的数组
private void sort(int[] array) {
int index;
for (int i = 1; i < array.length; i++) {
index=0;
for (int j = 1; j < array.length-i; j++) {
if(array[i]>array[index]){
index=j;
}
}
//位置交换再array.length-i和index(最大值)上的两个数
int temp=array[array.length-i]; //把第一个元素值保存到临时变量中
array[array.length-i]=array[index]; //把第二个元素值保存到第一个元素单元中
array[index]=temp; //把临时变量也就是第一个元素原值保存到第二个元素中
}
showArray(array); //输出直接选择排序后的数组值
}
//显示数组中的所有元素
private void showArray(int[] array) {
for(int i:array){ //遍历数组
System.out.print(">"+i); //输出每个数组元素值
}
System.out.println();
}
}
//最后按从大到小依次输出
转载请注明原文地址: https://ju.6miu.com/read-21227.html