java实现选择排序


public class Selection_Sort {
public static void main(String[] args) {
    Comparable[] a = {23, 3, 4, 5, 30, 2};
    sort(a);
    show(a);
}
//algorith
public static void sort(Comparable[] a){
    for (int i = 0; i < a.length; i++){
        int small = i;
        for(int j = i+1; j < a.length; j++){
            if(less(a[j], a[small])) small = j;
        }
        exch(a, i, small);
    }
}

private static boolean less(Comparable v, Comparable w){ return v.compareTo(w) < 0;}
private static void exch(Comparable[] a, int i, int j){
    Comparable t = a[i]; a[i] = a[j]; a[j] = t;
}
private static void show(Comparable[] a){
    for (int i = 0; i < a.length; i++)
        System.out.print(a[i] + " ");
    System.out.println();
}
public static boolean isSorted(Comparable[] a){
    for (int i = 1; i < a.length; i++)
        if (less(a[i], a[i-1]))
            return false;
    return true;
}

}

你可能感兴趣的:(java,选择排序)