快排模版

#include  <stdio.h>
void qsort(int a[],int l,int r)
{
    int x=a[l];
    int i=l;
    int j=r;
    if(l>=r) return ;
    while(i<j)
    {
        while(i<j&&a[j]>=x) j--;
        if(i<j)
        {
            a[i]=a[j];
            i++;
        }
        while(i<j&&a[i]<=x) i++;
        if(i<j)
        {
            a[j]=a[i];
            j--;
        }
    }
    a[i]=x;
    qsort(a,l,i-1);
    qsort(a,i+1,r);
}
int main()
{
    int n,a[101];
    scanf("%d",&n);
    for(int i=0;i<n;i++)
        scanf("%d",&a[i]);
    qsort(a,0,n-1);
    for(int i=0;i<n;i++)
        if(i==0) printf("%d",a[i]);
        else printf(" %d",a[i]);
    printf(" ");
    return 0;
}

原文地址:https://www.cnblogs.com/zhangmingcheng/p/3667353.html