Pagini recente » Cod sursa (job #2818613) | Cod sursa (job #3266482) | Cod sursa (job #1912371) | Cod sursa (job #962193) | Cod sursa (job #2082881)
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("algsort.in");
ofstream g("algsort.out");
int x[500002],n,i;
int impartire(int st,int dr)
{
int aux,i,j,di,dj;
di=0;
dj=1;
i=st;
j=dr;
while(i<j)
{
if (x[i]>x[j])
{
aux=x[i];
x[i]=x[j];
x[j]=aux;
aux=di;
di=dj;
dj=aux;
}
i=i+di;
j=j-dj;
}
return j;
}
void quick(int st,int dr)
{
int p;
if (st<dr)
{
p=impartire(st,dr);
quick(st,p-1);
quick(p+1,dr);
}
}//rezolvarea seamana cu cea de la quicksort , pagina 6/127 , putin schimbata (putin putin :) )
int main()
{
f>>n;
for (i=1; i<=n; i++)
f>>x[i];
quick(1,n);
for (i=1; i<=n; i++)
g<<x[i]<<" ";
}