关于快速排序的问题,下面是我的代码,我找不出问题在哪里,而且还没有输出,请帮忙指点指点,感激不尽

沛公 2011-08-27 12:39:18
/**
* 快速排序
*/
public class QuickSort {
public void quickSort(int[] arr){
qSort(arr, 0, arr.length - 1);
}

private void qSort(int[] arr, int low, int high) {
if(low < high){// 长度大于1
int pivot = partition(arr, low, high);//一分为二 ,pivot为枢纽位置
qSort(arr, low, pivot - 1);//对前一段递归排序
qSort(arr, pivot, high);//对后一段递归排序
}
}

private int partition(int[] arr, int low, int high) {
int i = low, j = high ;
int pivot = arr[low];
while(i < j){
while(arr[j]>=pivot)
j--;
swap(arr, arr[i], arr[j]);
while(arr[i]<=pivot)
i++;
swap(arr, arr[i], arr[j]);
}
return i;
}

//交换
private static void swap(int[] arr, int i, int j){
int temp = j;
j = i;
i = temp;
}

public static void main(String[] args) {
QuickSort qs = new QuickSort();
int[] arr = {4, 6, 2, 8, 1};
qs.quickSort(arr);
for(int temp : arr){
System.out.print(" " + temp);
}
}

}
...全文
54 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

51,409

社区成员

发帖
与我相关
我的任务
社区描述
Java相关技术讨论
javaspring bootspring cloud 技术论坛(原bbs)
社区管理员
  • Java相关社区
  • 小虚竹
  • 谙忆
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧