/*****************快排*******************/int Partition(int *a, int ileft, int iright){ int x = a[iright]; //主元 int i = ileft - 1; //小于主元游标 for(int j = ileft; j < iright; j++) { if(a[j] <= x) //小于主元 { i++; int temp = a[i]; a[i] = a[j]; a[j] = temp; } } a[iright] = a[i+1]; a[i+1] = x; return i+1;}void QuickSort(int *a, int ileft, int iRight) //快排接口{ if(ileft < iRight) { int ipos = Partition(a, ileft, iRight); QuickSort(a, ileft, ipos - 1); QuickSort(a, ipos + 1, iRight); }}
转载于:https://www.cnblogs.com/xly0713/p/3191863.html