public void quick(int[] a, int i, int j) { int k, m, n, temp; m = i; n = j; k = a[(i + j) / 2]; do { while (a[m] < k && m < j) m++; while (a[n] > k && n > i) n--; if (m <= n) { temp = a[m]; a[m] = a[n]; a[n] = temp; m++; n--; } } while (m <= n); if (m < j) quick(a, m, j); if (n > i) quick(a, i, n); }