Pagini recente » Cod sursa (job #1875013) | Cod sursa (job #70250) | Cod sursa (job #1926634) | Cod sursa (job #974681) | Cod sursa (job #1281084)
#include <iostream>
#include <fstream>
#include <algorithm>
#include <cstdlib>
using namespace std;
void quicks(int v[],int left,int right){
int ran= rand()%(right-left)+left;
int piv=v[ran];
int i=left,j=right,aux;
while(i<=j){
while(v[i]<piv){
i++;
}
while(v[j]>piv){
j--;
}
if(i<=j){
aux=v[i];
v[i]=v[j];
v[j]=aux;
i++;j--;
}
}
if(i<right)
quicks(v,i,right);
if(j>left)
quicks(v,left,j);
}
int main()
{
int v[500003], i ,n;
ifstream f("algsort.in",ios::in);
ofstream g("algsort.out",ios::out);
f>>n;
for(i=1;i<=n;i++)
f>>v[i];
quicks(v,1,n);
for(i=1;i<=n;i++)
g<<v[i]<<" ";
f.close();
g.close();
return 0;
}