快排Java模板

import java.util.Scanner;
import java.io.BufferedInputStream;

class main {
    public static void quickSort(int[] q, int l, int r) {
        if (l >= r) return;
        int x = q[(l + r) >> 1], i = l - 1, j = r + 1;
        while (i < j) {
            do ++i; while (q[i] < x);
            do --j; while (q[j] > x);
            if (i < j) {
                int temp = q[i];
                q[i] = q[j];
                q[j] = temp;
            }
        }
        quickSort(q, l, j);
        quickSort(q, j + 1, r);
    }

    public static void main(String[] args) {
        Scanner sc = new Scanner(new BufferedInputStream(System.in));
        int len = sc.nextInt();
        int[] q = new int[len];
        for (int x = 0; x < len; ++x)
            q[x] = sc.nextInt();
        quickSort(q, 0, len - 1);
    }
}
原文地址:https://www.cnblogs.com/INnoVationv2/p/12427510.html