Pagini recente » Cod sursa (job #1285453) | Cod sursa (job #381623) | Cod sursa (job #1997977) | Cod sursa (job #680843) | Cod sursa (job #644441)
Cod sursa(job #644441)
#include<fstream>
using namespace std;
ifstream in("algsort.in");
ofstream out("algsort.out");
int v[500001];
int partitionare(int p, int r)
{
int i,j,pivot,pah;
i=p-1;
j=r+1;
pivot=v[(p+r)/2];
do
{
do
{ j=j-1;
}while(v[j]>pivot);
do
{
i=i+1;
}while(v[i]<pivot);
if(i<j)
{
pah=v[i];
v[i]=v[j];
v[j]=pah;
}
else return j;
}while(i<=j);
}
void quicksort(int p, int r)
{
int q;
if(p<r)
{
q=partitionare(p,r);
quicksort(p,q);
quicksort(q+1,r);
}
}
int main()
{
int n,i;
in>>n;
for(i=1;i<=n;i++)
in>>v[i];
quicksort(1,n);
for(i=1;i<=n;i++)
out<<v[i]<<" ";
return 0;
}