快速排序

来源:互联网 发布:淘宝上的秒杀是假的 编辑:程序博客网 时间:2024/05/21 07:48
 

#include<iostream>
using namespace std;

int part(int *a,int l,int r)
{
    int x=a[l];
    int i,j,tmp;
    for(i=l,j=l+1;j<=r;j++)
    {
        if(a[j]<x)
        {
            i++;
            tmp=a[j];
            a[j]=a[i];
            a[i]=tmp;
        }
    }
    a[l]=a[i];
    a[i]=x;
    return i;
}
void myQsort(int *a,int l,int r)
{
    if(l<r)
    {
        int m=part(a,l,r);
        myQsort(a,l,m-1);
        myQsort(a,m+1,r);
    }
}
int main()
{
    int a[10]={1,2,3,4,25,6,7,8,9,10};
    myQsort(a,0,9);
    for(int i=0;i<10;i++)
        cout<<a[i]<<' ';
    cout<<endl;
    return 0;
}