快速排序模板

来源:互联网 发布:吉林省中小学网络研修 编辑:程序博客网 时间:2024/05/22 06:41
#include<stdio.h>void xchg(int &b,int &c){int t;t=b; b=c; c=t;}int findpoit(int *a,int l,int r){int p=l;while(l<r){while(a[r]>=a[p]&&p<r)r--;xchg(a[r],a[p]);while(a[l]<=a[p]&&l<p)l++;xchg(a[l],a[p]);}return p;}void qsort(int *a,int l,int r){if(l>=r)return ;int p=findpoit(a,l,r);qsort(a,l,p);qsort(a,p+1,r);}int main(){int n,i,a[1000];while(scanf("%d",&n)>0){for(i=1;i<=n;i++)scanf("%d",&a[i]);qsort(a,1,n);for(i=1;i<=n;i++)printf("%d ",a[i]);printf("\n");}}

0 0