java快排模板

    技术2022-07-10  131

    package No1; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStreamWriter; import java.io.PrintWriter; import java.io.StreamTokenizer; public class Main { public static void main(String[] args) throws IOException { StreamTokenizer in = new StreamTokenizer(new BufferedReader( new InputStreamReader(System.in))); PrintWriter out = new PrintWriter(new OutputStreamWriter(System.out)); in.nextToken(); int n = (int) in.nval; int arr[] = new int[n]; for (int i = 0; i < n; i++) { in.nextToken(); arr[i] = (int) in.nval; } quick_sort(arr, 0, n - 1); for (int i = 0; i < n; i++) { out.print(arr[i] + " "); } out.flush(); } public static void quick_sort(int arr[], int l, int r) { if (l >= r) return; int x = arr[l], i = l - 1, j = r + 1; while (i < j) { do i++; while (arr[i] < x); do j--; while (arr[j] > x); if (i < j) change(arr, i, j); } quick_sort(arr, l, j); quick_sort(arr, j + 1, r); } public static void change(int arr[], int a, int b) { int temp = arr[a]; arr[a] = arr[b]; arr[b] = temp; } }
    Processed: 0.010, SQL: 9