Cod sursa(job #878167)
| Utilizator | Data | 14 februarie 2013 08:38:16 | |
|---|---|---|---|
| Problema | Sortare prin comparare | Scor | 0 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.51 kb |
#include <fstream>
using namespace std;
int v[100],n;
void meresort(int p,int u)
{int man,mij,i,j;
mij=(p+u)/2; i=p,j=u;
do{
while(v[i]<v[mij])
i++;
while(v[j]>v[mij])
j--;
if(i<=j)
{man=v[i]; v[i]=v[j]; v[j]=man;
i++; j--;}
}while(i<=j);
if(p<i)
meresort(p,j);
if(i<u)
meresort(i,u);
}
int main()
{ifstream in("algsort.in");
ofstream out("algsort.out");
int i;
in>>n;
for(i=0;i<n;i++)
in>>v[i];
meresort(0,n-1);
for(i=0;i<n;i++)
out<<v[i]<<" ";
return 0;
}
