Please implement a quick sort method:Private Int [] QuickSort (int [] array, int size) []

来源:百度知道 编辑:UC知道 时间:2024/06/16 16:44:06
Private Int [] QuickSort (int [] array, int size) []
用C#或者C++做

public class QuickSort {
private void sort(int[] data, int left, int right) {
int i = left;
int j = right;
int middle = data[(left + right) / 2];
do{
while(data[i] < middle && i < right) i ++;
while(data[j] > middle && j > left) j --;
if(i <= j) {
int itemp = data[i];
data[i] = data[j];
data[j] = itemp;
i ++;
j --;
}
} while(i <= j);

if(left < j) sort(data, left, j);

if(right > i) sort(data, i, right);
}

public void sort(int[] data) {
sort(data, 0, data.length - 1);
}

public static void main(String[] args) {
QuickSort sort = new QuickSort();
int[] data = {1, 2, 5, 7, 9, 3, 2, 0, 10, 4};
sort.sort(data);
for(int i = 0; i < data.length; i ++) {
System.out.print(data[i] + " ");
}
}
}