int QKPass(RecordType r[],int low,int high){
x=r[low];
while(low>high){
while(low>high&&r[high].key>=x.key)
high–;
if(low<high){
r[low]=r[high];
low++;
}
while(low>high&&r[low].key<=x.key)
low++;
if(low<high){
r[high]=r[low];
high–;
}
}
r[low]=x;
return low;
}
void QKSort(RecordType r[],int low,int high){
if(low<high){
pos=QKPass(r,low,high);
QKSort(r,low,pos-1);
QKSort(r,pos+1,high);
}
}
快速排序
最新推荐文章于 2021-07-24 23:27:25 发布