某个待排序的序列是一个可变长度的字符串序列,这些字符串一个接一个地存储于唯一的字符数组中。请改写快速排序算法,对这个字符串序列进行排序。
【正确答案】正确答案: int Partition(RecType R[],int n,int h){ //一趟快速排序算法,枢轴记录到位,并返回其所在位置 int i=n,j=h,R[0]=R[i],x=R[i].key; while(i<j){ while(i<j&&R[j].key>=x)j--; if(i<j)R[i]=R[j]: while(i<j&&R[i].key<=x)i++; if(i<j)R[j]=R[i]; }//while R[i]=R[0]; return i; } 提示:此题考查的知识点是快速排序的思想。
【答案解析】