package org.lion.euler.study.sort;
public class QuickSort extends AbstractSort {
@Override
public void sort(Integer[] array) {
this.sort(array, 0, array.length);
}
private void sort(Integer[] array, int begin, int end) {
if(begin >= end){
return;
}
int low = begin;
int high = end;
while(begin < end){
while(begin < end && array[begin] <= array[end - 1]){
end -= 1;
}
if(begin < end){
swap(array, begin, end - 1);
}
while(begin < end && array[begin] <= array[end - 1]){
begin += 1;
}
if(begin < end){
swap(array, begin, end - 1);
}
}
this.sort(array, low, begin - 1);
this.sort(array, begin + 1, high);
}
}
排序-JAVA实现【六】快速排序
最新推荐文章于 2022-08-03 11:20:55 发布