import org.junit.Test;
public class Sort {
private int[] a = new int[1000];
@Test
public void demo() {
initData();
quicksort(0, a.length - 1);
for (int i = 0; i < a.length; i++) {
System.out.println(a[i]);
}
}
private void initData() {
int max = 10000, min = 1;
for (int i = 0; i < a.length; i++) {
a[i] = (int) (Math.random() * (max - min) + min);
}
}
public void quicksort(int left, int right) {
int i, j, t, temp;
if (left > right)
return;
temp = a[left];
i = left;
j = right;
while (i != j) {
while (a[j] >= temp && i < j) {
j--;
}
while (a[i] <= temp && i < j) {
i++;
}
if (i < j) {
t = a[i];
a[i] = a[j];
a[j] = t;
}
}
a[left] = a[i];
a[i] = temp;
quicksort(left, i - 1);
quicksort(i + 1, right);
}
}