Cod sursa(job #1990105)

Utilizator b10nd3Oana Mancu b10nd3 Data 10 iunie 2017 15:26:56
Problema Sortare prin comparare Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.69 kb
#include<iostream>
#include<fstream>
using namespace std;

void change(int sort[],int x, int y){
   int aux=sort[x];
   sort[x]=sort[y];
   sort[y]=aux;
}

void quicksort(int sort[], int left, int right){
  int aux, pivot,i,j;
  pivot=sort[(left+right)/2]; i=left; j=right;
  while(i<=j){ 
    while(sort[i]<pivot) i++;
    while(sort[j]>pivot) j--;
    if(i<=j) {change(sort,i,j); i++; j--;}
  }
 if(i<right) quicksort(sort,i,right);
 if(j>left) quicksort(sort,left,j); 
}


int main(){
ifstream in("algsort.in"); ofstream out("algsort.out");
int n; in>>n;
int sort[n],i;
for(i=0;i<n;i++) in>>sort[i];
quicksort(sort,0,n-1);
for(i=0;i<n;i++) out<<sort[i]<<" ";
return 0;
}