Pagini recente » Cod sursa (job #1611326) | Cod sursa (job #1349774) | Cod sursa (job #1611860) | Cod sursa (job #891697) | Cod sursa (job #609644)
Cod sursa(job #609644)
#include <fstream>
#include <vector>
using namespace std;
vector<int> v (500000);
int n;
void citire(); void qsort(int l,int r);
void afisare();
int main()
{
citire();
qsort(0,n-1);
afisare();
return 0;
}
void afisare()
{
ofstream fout("algsort.out");
for(int i=0;i < n;++i)
fout<<v[i]<<" ";
fout.close();
}
void qsort(int l,int r)
{
int i=l,j=r,t=v[(l+r)/2];
while(i<=j)
{
while(v[i]<t) ++i;
while(v[j]>t) --j;
if(i<=j)
{
swap(v[i],v[j]);
++i;
--j;
}
}
if(i<r) qsort(i,r);
if(l<j) qsort(l,j);
}
void swap(int &a,int &b)
{
int aux=a; a=b; b=aux;
}
void citire()
{
ifstream fin("algsort.in");
fin>>n;
for(int i=0;i<n;++i)
fin>>v[i];
}