急求数据结构答案!!

来源:百度知道 编辑:UC知道 时间:2024/05/21 12:18:59
用快速排序法对一组数据排序。

int divideareasort(recordtype r[],int s,int t)
{int i,j;
recordtype t;
i=s;j=t;
t=r[s];
do
{
while ((r[j].key>=t.key)&&(i<j))
j--;//自后向前扫描找小于基准关键字的记录
if(i<j)
{r[i]=r[j];
i++;//指令i指向i+1
}
while((r[i].key<=t.key)&&(i<j)
i++;//自前向后扫描找大于基准关键字的记录
if(i<j)
{r[j]=r[i];
j--;//j指向j-1
}
}
while(i<j);//当i<j时重复以上过程
r[i]=t;
return i;
}