java实现插入排序


public class Insertion {
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 = 1; i< a.length; i++){
        for (int j = i; j > 0 && less(a[j], a[j-1]); j--)
            exch(a, j, j-1);
    }
}

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,插入排序)