【排序】快排-1

2018-09-12  本文已影响0人  菜鸟learn编程
// 参考《算法导论》上的伪代码
public void quickSort(int[] num, int begin, int end) {
  if(begin<end){
    int center = partition(num, begin, end);
    quickSort(num, begin, center-1);
    quickSort(num, center+1, end);  
  }
}

pubic int partition(int[] num, int begin, int end) {
  int index = num[end];
  int i = begin - 1;
  for(int j=begin; j<end; j++) {
    if(num[j]<=index) {
      i++;
      exchange(num, i, j);
    }
  }
  exchange(num, i+1, end);
  return i+1;
}
上一篇 下一篇

猜你喜欢

热点阅读