Cod sursa(job #1819817)
| Utilizator | Data | 30 noiembrie 2016 20:49:46 | |
|---|---|---|---|
| Problema | Sortare prin comparare | Scor | 0 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.66 kb |
#include <bits/stdc++.h>
using namespace std;
int i,n,k,p;
long* v;
void quick(int s,int d)
{
int i,j,m;
i=s;
j=d;
m=(i+j)/2;
do
{
while(v[i]<v[m])
i++;
while(v[j]>v[m])
j--;
if(i<=j)
{
swap(v[i],v[j]);
i++;
j--;
}
}while(i<=j);
if(i<d)
quick(i,d);
if(j>s)
quick(s,j);
}
int main()
{
ifstream cin("algsort.in");
ofstream cin("algsort.out");
cin>>n;
v=new long[n+5];
for(i=1;i<=n;i++)
cin>>v[i];
quick(1,n);
for(i=1;i<=n;i++)
cout<<v[i]<<" ";
}
