Pagini recente » Cod sursa (job #1450018) | Cod sursa (job #61731) | Cod sursa (job #113727) | Cod sursa (job #471877) | Cod sursa (job #736417)
Cod sursa(job #736417)
#include<fstream>
using namespace std;
int a[500001],n,k;
void quicksort(int lb, int ub){
int i=lb,j=ub,pivot=a[(lb+ub)>>1];
do{
while(a[i]<pivot)++i;
while(a[j]>pivot)--j;
if(i<=j){
a[i]^=a[j]; a[j]^=a[i]; a[i]^=a[j];
i++; j--;
}
}while(i<=j);
if(j>lb)quicksort(lb,j);
if(ub>i)quicksort(i,ub);
}
int main(void){
ifstream fin("algsort.in");
ofstream fout("algsort.out");
fin>>n;
for(int i=1;i<=n;++i)fin>>a[i]; fin.close();
quicksort(1,n);
for(int i=1;i<=n;++i)fout<<a[i]<<" ";
fout.close();
return 0;
}