Pagini recente » Cod sursa (job #2982283) | Cod sursa (job #1649203) | Cod sursa (job #2303065) | Cod sursa (job #1938277) | Cod sursa (job #2106726)
#include <cstdio>
using namespace std;
int n,a[1001];
int Sort(int Left,int Right)
{
int aux;
int Low = Left-1;
int Pivot = a[Right];
for(int i=Left;i<=Right-1;i++)
{
if(a[i] <= Pivot)
{
Low++;
if(Low != i)
{
aux = a[Low];
a[Low] = a[i];
a[i] = aux;
}
}
}
aux = a[Low+1];
a[Low+1] = a[Right];
a[Right] = aux;
return Low + 1;
}
void QuickSort(int L,int R)
{
if(L < R)
{
int Pivot = Sort(L,R);
QuickSort(L,Pivot-1);
QuickSort(Pivot+1,R);
}
}
int main()
{
freopen("algsort.in","r",stdin);
freopen("algsort.out","w",stdout);
scanf("%i",&n);
for(int i=1;i<=n;i++)
{
scanf("%i",&a[i]);
}
QuickSort(1,n);
for(int i=1;i<=n;i++)
{
printf("%i ",a[i]);
}
return 0;
}