快速排序的c++实现

int part(int p[], int i,int j)
{
int key=p[i];

while(i<j)
{
    while(i<j&&p[j]>=key)
        j--;
    if(i<j)
        p[i]=p[j];
        i++;
    while(i<j&&p[i]<=key)
        i++;
    if(i<j)
        p[j]=p[i];
        j--;
}
     p[i]=key;
     return i;
}


void qsort(int p[],int i,int j)
{

    if(i<j)
    {
    int div=part(p,i,j);
    qsort(p,i,div-1);
    qsort(p,div+1,j);
    }
}

参考:http://www.cnblogs.com/morewindows/archive/2011/08/13/2137415.html

原文地址:https://www.cnblogs.com/fickleness/p/3284946.html