快速排序

#include <stdio.h>
#include <string.h>
int a[20]={6,1,5,4,8,3,9,12,51,11,15,14,13,25,69,47,56,74,26,78};
void quicksort(int left,int right)
{
if(left>right)
return;
int i=left,j=right,t;
while(i!=j)
{
while(a[j]>=a[left]&&i<j)
j--;
while(a[i]<=a[left]&&i<j)
i++;
if(i<j)
{
t=a[i];
a[i]=a[j];
a[j]=t;
}
}
t=a[left];
a[left]=a[i];
a[i]=t;
quicksort(left,i-1);
quicksort(i+1,right);
}
void main()
{
int i;
quicksort(0,19);
for(i=0;i<20;i++)
printf("%d ",a[i]);
}

posted @ 2018-01-01 20:24  地表最强队队员  阅读(165)  评论(0编辑  收藏  举报