//快速排序
int Partition(Sqlist *L,int low,int high){
L->data[0]=L->data[low];//data[0]作枢轴记录
while(low<high){
while(low<high&&L->data[high]>L->data[0])
--high;
L->data[low]=L->data[high];
while(low<high&&L->data[low]<L->data[0])
++low;
L->data[high]=L->data[low];
}
L->data[low]=L->data[0];//记录到位
return low;
}
void QSort(Sqlist *L,int low,int high){
if(low<high){
int pivotloc;
pivotloc=Partition(L,low,high);
QSort(L,low,pivotloc-1);
QSort(L,pivotloc+1,high);
}
}
void QuickSort(Sqlist *L){
QSort(L,1,L->len);
}