码迷,mamicode.com
首页 > 编程语言 > 详细

快速排序

时间:2019-06-17 21:59:23      阅读:156      评论:0      收藏:0      [点我收藏+]

标签:else   swap   more   排序   static   quicksort   turn   stat   ati   

package com.cisco.www.sort;

public class QuickSort {
public static void quickSort(int[] arr,int L,int R){
int[] p = partition(arr,L,R);
quickSort(arr,L,p[0]-1);
quickSort(arr,p[1]+1,R);
}
public static int[] partition(int[] arr,int L,int R){
int less = L -1;
int more = R+1;
int cur= L;
while (cur<more){
if(arr[cur]<arr[R]){
swap(arr,++less,cur++);
}else if(arr[cur]>arr[R]){
swap(arr,--more,L);
}else {
cur++;
}
}
swap(arr,more,R);
return new int[]{less+1,more};
}

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

快速排序

标签:else   swap   more   排序   static   quicksort   turn   stat   ati   

原文地址:https://www.cnblogs.com/bigdata-stone/p/11042340.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!