快速排序在许多竞赛,面试中经常考一个项目,常以填空,算法形式出现 static void quickSort(int[] arr,int begin,int end) {//分成若干个左子问题,右子问题 if(begin<end) { int q = partition(arr,begin,end); quickSort(arr, begin, q-1); quickSort(arr, q+1, end); } } 那么重点就是如何去划分,左边的比主元小于或等于,右边的比主元大 代码思路 扫描指针小于等于主元的时候扫描指针往后走 扫描指针大于主元的时候