Pagini recente » Cod sursa (job #2192413) | Cod sursa (job #1667603) | Cod sursa (job #806877) | Cod sursa (job #1783262) | Cod sursa (job #1088149)
#include <iostream>
#include <fstream>
using namespace std;
ifstream in("algsort.in");
ofstream out("algsort.out");
const int N=500001;
int n,v[N];
void qsort(int st, int dr){
if(st>=dr) return;
int a=v[(st+dr)/2];
v[(st+dr)/2]=v[dr];
v[dr]=a;
int si=st;
for(int i=st ; i<dr ; i++){
if(v[i]<v[dr]){
a=v[i];
v[i]=v[si];
v[si]=a;
si++;
}
}
a=v[si];
v[si]=v[dr];
v[dr]=a;
qsort(st,si-1);
qsort(si+1,dr);
}
int main()
{
in>>n;
for(int i=1 ; i<=n ; i++){
in>>v[i];
}
qsort(1,n);
for(int i=1 ; i<=n ; i++){
out<<v[i]<<' ';
}
return 0;
}