奇偶排序

比较特别的排序方法。

每次先对奇数项的元素与相邻下一位排序,然后对偶数项元素与相邻下一位排序。感觉和冒泡有点类似,只是分开了两次做。

public static void oddEvenSort(int[] A){
    boolean unsorted = true;
    while(unsorted){
        unsorted = false;
        for(int i = 1; i < A.length-1; i += 2){
            if(A[i] > A[i+1]){
                swap(A, i, i+1);
                unsorted = true;
            }
        }
        for(int i = 0; i < A.length-1; i += 2){
            if(A[i] > A[i+1]){
                swap(A, i, i+1);
                unsorted = true;
            }
        }
    }
}
Java
原文地址:https://www.cnblogs.com/7hat/p/3381364.html