Pagini recente » Cod sursa (job #1788531) | Cod sursa (job #173387) | Cod sursa (job #3126095) | Cod sursa (job #83574) | Cod sursa (job #778824)
Cod sursa(job #778824)
# include <fstream>
# define dim 500005
using namespace std;
ifstream in("algsort.in");
ofstream out("algsort.out");
int v[dim];
void Qsort( int v[] , int st , int dr ){
int mij,min,max,temp;
min = st;
max = dr;
mij = v[ st + (dr-st) / 2 ];
do{
for(; v[min] < mij ; ++min );
for(; v[max] > mij ; --max );
if( min <= max ){
temp = v[min];
v[min++] = v[max];
v[max--] = temp;
}
}while( min <= max);
if( st < max ) Qsort(v,st,max);
if( dr > min ) Qsort(v,min,dr);
}
int main(){
int n,i;
in >> n;
for( i = 0 ; i < n ; ++i )
in >> v[i];
Qsort(v,0,n-1);
for( i = 0 ; i < n ; ++i )
out << v[i] << " ";
in.close();
out.close();
return 0;
}