/** 来自 n o w j a v a . c o m**/
import java.util.ArrayList;
import java.util.List;
import java.util.Random;
public class Main {
public static void main(String ags[]) {
int a[] = new int[10];
for (int i = 0; i < a.length; i++) {
a[i] = new Random().nextInt(10);
}
quicksort(a, 0, a.length - 1);
}
static int patition(int[] a, int start, int end) {
int pivot = a[start];
List s = new ArrayList();
List l = new ArrayList();
/*
来 自*
N o w J a v a . c o m
*/
for (int j = start + 1; j <= end; j++) {
if (a[j] <= pivot) {
s.add(a[j]);
} else {
l.add(a[j]);
}
}
for (int j = 0; j < s.size(); j++) {
a[start + j] = (Integer) s.toArray()[j];
}
a[start + s.size()] = pivot;
for (int j = 0; j < l.size(); j++) {
a[s.size() + start + j + 1] = (Integer) l.toArray()[j];
}
return start + s.size();
}
static void quicksort(int[] a, int start, int end) {
if (start < end) {
int q = patition(a, start, end);
quicksort(a, start, q - 1);
quicksort(a, q + 1, end);
/**代码未完, 请加载全部代码(NowJava.com).**/
本文系作者在时代Java发表,未经许可,不得转载。如有侵权,请联系nowjava@qq.com删除。