Pagini recente » Cod sursa (job #527168) | Cod sursa (job #1861297) | Cod sursa (job #3040305) | Cod sursa (job #11713) | Cod sursa (job #1251464)
#include <fstream>
#define NMAX 500001
using namespace std;
ifstream f("algsort.in");
ofstream g("algsort.out");
int v[NMAX];
void qsort (int a, int b)
{
int left, right, pivot;
left=a;
right=b;
pivot=(a+b)/2;
while(left<=right)
{
while(pivot<v[right])
right--;
while(pivot>v[left])
left++;
if(left<=right)
{
swap(v[left],v[right]);
left++; right--;
}
}
if(a<right) qsort(a,right);
if(b>left) qsort(left,b);
}
int main()
{
int N;
f>>N;
int i;
for(i=1;i<=N;i++)
f>>v[i];
qsort(1,N);
for(i=1;i<=N;i++)
g<<v[i]<<' ';
}