Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- using namespace std;
- const int TAM_ARRAY = 6;
- void printLista(int array[])
- {
- int i;
- cout << "[";
- for (i = 0; i < TAM_ARRAY; i++)
- {
- if (i == TAM_ARRAY - 1) {
- cout << array[i] << "]\n";
- break;
- }
- cout << array[i] << ", ";
- }
- }
- int particionar(int array[], int inicio, int fim)
- {
- int esq, dir, pivo, aux;
- esq = inicio;
- dir = fim;
- pivo = array[inicio];
- while (esq < dir)
- {
- while (array[esq] <= pivo && esq <= fim)
- esq++;
- while (array[dir] > pivo && dir >= 0)
- dir--;
- if (esq < dir)
- {
- aux = array[esq];
- array[esq] = array[dir];
- array[dir] = aux;
- }
- }
- array[inicio] = array[dir];
- array[dir] = pivo;
- return dir;
- }
- void quickSort(int array[], int inicio, int fim)
- {
- int pivo;
- if (inicio >= fim) return;
- pivo = particionar(array, inicio, fim);
- // cout << "Pivo: " << array[pivo] << " - ";
- // printLista(array);
- quickSort(array, inicio, pivo - 1);
- quickSort(array, pivo + 1, fim);
- }
- int main()
- {
- int array[TAM_ARRAY] = {5, 4, 3, 7, 1, 6};
- int i;
- cout << "Antes da ordenacao: ";
- printLista(array);
- quickSort(array, 0, TAM_ARRAY - 1);
- cout << "Depois da ordenacao: ";
- printLista(array);
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement