选择排除

来源:互联网 发布:jdk1.8 64位 ubuntu 编辑:程序博客网 时间:2024/04/25 18:36

先总结啥选择排序的算法特点:

假设数组{a1,a2...an}a[0]为最小,查找到比a[0]小的的交换,选择排序永远是a[0]位置上的数和其他数据进行交换,这样就可以保证a[0]上是最小的数据。

看个图吧


Java实现选择算法:

结果:

The1line: 1348259
The2line: 1248359
The3line: 1238459
The4line: 1234859
The5line: 1234589
The6line: 1234589

public class SelectSort{


public static void swap(int[] arr,int a,int b){
int temp = arr[a];
arr[a]=arr[b];
arr[b]=temp;


}


public static void main(String[] args)

int[] arr = {3,1,4,8,2,5,9};
for(int i=0;i<arr.length-1;i++){
for(int j = i+1;j<arr.length;j++){
if(arr[i]>arr[j]){
swap(arr,i,j);
}
}
int h=i+1;
System.out.print("The" + h + "line: " );
for(int k=0;k<arr.length;k++){
System.out.print(arr[k]);
}
System.out.println();
}
}


}

0 0