求解为什么我的快速排序不正确
/*
* 快速排序
*/
public static int sort(int[] array, int low, int high) {
int temp = 0;
if (low < high) {
temp = array[low];
while (low < high) {
while (low < high && array[high] >= temp) {
high--;
}
// if(array[high]<temp) {
array[low] = array[high];
// low++;
// }
while (low < high && array[low] <= temp) {
low++;
}
// if(array[low]>temp) {
array[high] = array[low];
// high--;
// }
}
}
array[low] = temp;
return low;
}
public static void myQuickSort(int array[], int low, int high) {
int i=sort(array, low, high);
if(low<high) {
sort(array, i+1, high);
sort(array, low, i-1);
}
}