Pagini recente » Cod sursa (job #1998759) | Cod sursa (job #2051468) | Cod sursa (job #2981685) | Cod sursa (job #756863) | Cod sursa (job #2002999)
#include <bits/stdc++.h>
using namespace std;
ifstream f("algsort.in");
ofstream g("algsort.out");
int n,a[500005];
int k;
void poz(int li, int ls, int &k)
{
int i=li,j=ls,c,i1=0,j1=-1;
while(i<j)
{
if(a[i]>a[j])
{
swap(a[i],a[j]);
c=i1;
i1=-j1;
j1=-c;
}
i=i+i1;
j=j+j1;
}
k=i;
}
void quick(int li,int ls)
{
if(li<ls)
{
poz(li,ls,k);
quick(li,k-1);
quick(k+1,ls);
}
}
int main()
{
f>>n;
for(int i=1;i<=n;++i)
f>>a[i];
quick(1,n);
for(int i=1;i<=n;++i)
g<<a[i]<<" ";
}