Pagini recente » Cod sursa (job #999381) | Borderou de evaluare (job #2699506) | Cod sursa (job #624112) | Cod sursa (job #1129078) | Cod sursa (job #1880304)
#include <bits/stdc++.h>
using namespace std;
ifstream f("algsort.in");
ofstream g("algsort.out");
int n,i,x[500010];
void quick_sort(int,int);
int main()
{
f>>n;
for(i=1;i<=n;i++)
f>>x[i];
quick_sort(1,n);
for(i=1;i<=n;i++)
g<<x[i]<<' ';
return 0;
}
void quick_sort(int L,int R)
{
int M=(L+R)/2,S=L,D=R;
if(L>=R)
return;
M=x[(L+R)/2];
do
{
while(x[S]<M)S++;
while(x[D]>M)D--;
if(S<=D){swap(x[S],x[D]);S++;D--;}
}
while(S<=D);
quick_sort(L,D);
quick_sort(S,R);
}