Pagini recente » Cod sursa (job #3143512) | Cod sursa (job #2586243) | Cod sursa (job #3228289) | Cod sursa (job #1950385) | Cod sursa (job #2943580)
///Quicksort
#include <iostream>
#include <fstream>
using namespace std;
# define MaxN 500000
int v[MaxN];
void quicksort(int v[], int b, int e){
int pivot=v[(b+e)/2];
int i=b, j=e;
while(v[i]<pivot)
i++;
while(v[j]>pivot)
j--;
while(i<j){
swap(v[i], v[j]);
do
i++;
while(v[i]<pivot);
do
j--;
while(v[j]>pivot);
}
if(b<j)
quicksort(v, b, j);
if(i+1<e)
quicksort(v, i+1, e);
}
int main()
{
ifstream in("algsort.in");
ofstream out("algsort.out");
int n, i;
in>>n;
for(i=0; i<n; i++){
in>>v[i];
}
quicksort(v, 0, n-1);
for(i=0; i<n; i++){
out<<v[i]<<" ";
}
return 0;
}