Está en la página 1de 1

#include <iostream>

#include <stdlib.h>

using namespace std;

int mivector[10];

void llenarvector(){
for(int i=0;i<10;i++){
cout<<"Entre el elemento ["<<i+1<<"] del vector"<<endl;
cin>>mivector[i];
}
}

void imprimirvector(){
for(int i=0;i<10;i++){
cout<<mivector[i]<<" ";
}
}

void quicksort(int *mivecto, int primero, int ultimo)


{
int i, j, central;
int pivote;
central = (primero + ultimo)/2;
pivote = *(mivecto+central);
i = primero;
j = ultimo;
do {
while (*(mivecto + i) < pivote) i++;
while (*(mivecto + j) > pivote) j--;
if (i<=j)
{
int tmp;
tmp = *(mivecto + i);
*(mivecto + i) = *(mivecto + j);
*(mivecto + j) = tmp; /* intercambia a[i] con a[j] */
i++;
j--;
}
}while (i <= j);
if (primero < j)
quicksort(mivector, primero, j);/* mismo proceso con sublista izqda */
if (i < ultimo)
quicksort(mivector, i, ultimo); /* mismo proceso con sublista drcha */
}

int main(){
llenarvector();
cout<<"El vector es: "<<endl;
imprimirvector();
quicksort(mivector, 0, 9);
cout<<"El vector ordenado es: "<<endl;
imprimirvector();
system("pause");
}

También podría gustarte