选择排序的思路:
令A[1…n]为一个有n个元素的数组,利用选择排序对数组A进行排序的思路如下:首先找到数组A的最小元素,将其存放在A[0]中,然后找到剩下的n-1个元素中的最小元素,将其存放在A[1]中,重复此过程直至找到第二大的元素,并将其存放在A[n-2]中。
选择排序的实现:
/**
* 选择排序
* Created by yuzhan on 2017/10/18.
*/
public class main {
public static void SelectSort(int[] A){
int n = A.length;
for(int i = 0;i < n;i++){
int k = i;
for(int j = i+1;j < n;j++){
if(A[j] < A[k])
k = j;
}
if(k != i){
int temp = A[i];
A[i] = A[k];
A[k] = temp;
}
}
}
public static void main(String[] args) {
int[] A = {123,21,33,1,14,23,65,75,134,67,2};
main.SelectSort(A);
for(int i = 0;i < A.length;i++)
System.out.print(A[i]+ " ");
}
}