#include<stdio.h>
void Quick(int arr[], int start, int end){
if(start >= end)
return ;
int i = start;
int j = end;
int pivot = arr[start];
while(i < j){
while(i < j && arr[j] > pivot){
j--;
}
if(i < j){
arr[i] = arr[j];
i++;
}
while(i < j && arr[i] < pivot){
i++;
}
if(i < j){
arr[j] = arr[i];
j--;
}
}
arr[i] = pivot;
Quick(arr,start,i-1);
Quick(arr,i+1,end);
}
int main()
{
int i;
int arr[] = {1, 3, 6, 4, 9, 8, 5, 7, 2, 5, 2};
int n = sizeof(arr) / sizeof(int);
Quick(arr, 0, n - 1);
for (i = 0; i < n; i++)
{
printf("%d ", arr[i]);
}
}
#include<stdio.h>
void Quick(int arr[], int start, int end){
if(start >= end)
return ;
int i = start;
int j = end;
int pivot = arr[start];
while(i < j){
while(i < j && arr[j] > pivot){
j--;
}
if(i < j){
arr[i] = arr[j];
i++;
}
while(i < j && arr[i] < pivot){
i++;
}
if(i < j){
arr[j] = arr[i];
j--;
}
}
arr[i] = pivot;
Quick(arr,start,i-1);
Quick(arr,i+1,end);
}
int main()
{
int i;
int n;
scanf("%d", &n);
int arr[n];
for(i = 0; i < n; i++)
{
scanf("%d", &arr[i]);
}
Quick(arr, 0, n - 1);
for (i = 0; i < n; i++)
{
printf("%d ", arr[i]);
}
}