Java 代码实现快速排序算法
时间: 2023-03-15 15:15:11 浏览: 163
Java代码实现快速排序算法的基本思想是:通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有数据都要小,然后再按此方法对这两部分数据分别进行快速排序,整个排序过程可以递归进行,以此达到整个数据变成有序序列。Java代码实现的快速排序算法如下所示:public static void quickSort(int[] arr,int low,int high){
if(arr==null || arr.length<=0){
return;
}
if(low>=high){
return;
}
// 定义变量
int left=low;
int right=high;
// 基准数
int temp=arr[left];
while(left<right){
// 先看右边,依次往左递减
while(left<right && arr[right]>=temp){
right--;
}
// 再看左边,依次往右递增
while(left<right && arr[left]<=temp){
left++;
}
// 交换
if(left<right){
int t=arr[left];
arr[left]=arr[right];
arr[right]=t;
}
}
// 最后将基准为与i和j相等位置的数字交换
arr[low]=arr[left];
arr[left]=temp;
// 递归调用左半数组
quickSort(arr,low,right-1);
// 递归调用右半数组
quickSort(arr,right+1,high);
}
阅读全文