Pagini recente » Cod sursa (job #2261402) | Cod sursa (job #2705096) | Cod sursa (job #950864) | Cod sursa (job #2226008) | Cod sursa (job #1969598)
#include <bits/stdc++.h>
using namespace std;
ifstream f("algsort.in");
ofstream g("algsort.out");
int v[500001];
int n;
int q_partition(int p, int q)
{
int i=p,j=q,pivot;
pivot=(p+q)/2;
while(i<=j)
{
while(v[i]<v[pivot])
i++;
while(v[j]>v[pivot])
j--;
if(i<=j)
{
swap(v[i],v[j]);
i++;
j--;
}
}
return i;
}
void quick_sort(int p, int q)
{
int k=q_partition(p,q);
if(p<k-1)
quick_sort(p,k-1);
if(k<q)
quick_sort(k,q);
}
void sortare()
{
srand(time(NULL));
quick_sort(1,n);
}
int main()
{f>>n;
for(int i=1;i<=n;i++)
f>>v[i];
sortare();
for(int i=1;i<=n;i++)
g<<v[i]<<' ';
return 0;
}