#include <stdio.h>
#include <stdlib.h>
int partion(int a[],int left,int right)
{
int base=a[left];
while (left<right)
{
while(left<right && a[right]>base)
--right;
a[left]=a[right];
while(left<right && a[left]<base)
++left;
a[right]=a[left];
}
a[left]=base;
return left;
}
void quicksort(int a[],int left,int right)
{
int i;
if (left<right)
{
i=partion(a,left,right);
quicksort(a,left,i-1);
quicksort(a,i+1,right);
}
}
int main()
{
int i,a[10];
for (i=0;i<10;i++)
{
a[i]=rand();
}
for (i=0;i<10;i++)
{
printf("%5d",a[i]);
printf("\n");
}
printf("---------------------------------");
quicksort(a,0,9);
for (i=0;i<10;i++)
{
printf("%6d",a[i]);
}
system("pause");
return 0;
}
评论1
最新资源