Pagini recente » Cod sursa (job #1358875) | Cod sursa (job #2025150) | Cod sursa (job #626918) | Cod sursa (job #1067251) | Cod sursa (job #3122072)
#include <fstream>
#include <random>
#include <ctime>
#include <algorithm>
using namespace std;
ifstream cin("algsort.in");
ofstream cout("algsort.out");
int v[500001], n;
void qs(int v[], int s, int d) {
long int i = s, j = d, pivot = v[(i+j)/2];
while(i<=j) {
while(v[i] < pivot)
i++;
while(v[j] > pivot)
j--;
if(i<=j) {
swap(v[i], v[j]);
i++; j--;
}
}
if(s<j)
qs(v,s,j);
if(d>i)
qs(v,i,d);
}
int main() {
//mt19937 rng(time(nullptr));
cin>>n;
for(int i=1; i<=n; i++)
cin>>v[i];
//shuffle(v + 1,v + 1 + n,rng);
qs(v,1,n);
for(int i=1; i<=n; i++)
cout<<v[i]<<" ";
}