不同版本的快速排序

来源:互联网 发布:distinct unique sql 编辑:程序博客网 时间:2024/06/11 09:56

之前也写了相应的快速排序的相应的代码,但是只是最基本的快排的算法,本文介绍的两种算法均是优化后的快排算法。

版本一:

#includeusing namespace std;void quick_sort(int a[],int p,int q);int partition(int a[],int p,int q);int main(){    int n;    srand((unsigned)time(NULL));    scanf("%d",&n);  int a[n];      for(int i=0;i=j) break;        t=a[j],a[j]=a[i],a[i]=t;    }    t=a[j],a[j]=a[p],a[p]=t;    return j;}
版本二:

#includeusing namespace std;void quick_sort(int a[],int p,int q);int partition(int a[],int p,int q);int main(){    int n;    srand((unsigned)time(NULL));    scanf("%d",&n);  int a[n];      for(int i=0;iy) t=x,x=y,y=t;}void quick_sort(int a[],int p,int q){    if(p=j) break;        t=a[j],a[j]=a[i],a[i]=t;    }    t=a[j],a[j]=a[p],a[p]=t;    return j;}

原创粉丝点击