<span style="font-size:14px;">#include<stdio.h>
int num[1000]={0};
void quicksort(int left,int right)
{
int i,j,t,temp;//temp基准数
if(left>right)
return ;
temp=num[left];
i=left;
j=right;
while(i!=j)
{
while(num[j]>=temp&&i<j)
j--;
while(num[i]<=temp&&i<j)
i++;
if(i<j)
{
t=num[i];
num[i]=num[j];
num[j]=t;
}
}
num[left]=num[i];
num[i]=temp;
quicksort(left,i-1);//递归处理左面的
quicksort(i+1,right);//递归处理右面的
}
int main()
{
int i;
int n;
while(scanf("%d",&n),n)
{
for(i=0;i<n;i++)
scanf("%d",&num[i]);
quicksort(0,n-1);
printf("%d",num[0]);
for(i=1;i<n;i++)
printf(" %d",num[i]);
printf("\n");
}
return 0;
}
</span>
排序 快速排序
最新推荐文章于 2022-05-01 09:00:00 发布