quicksort

Run Settings
LanguageC
Language Version
Run Command
#include <stdio.h> #include <stdlib.h> #include <time.h> void quick_sort(int vet[], int esq, int dir){ //declara pivo como inicial int pivo = esq, i, ch, j; //percorre o vetor for (i=esq+1; i<=dir; i++){ j=i; //is v[pivo] > ?? if(vet[j] > vet[pivo]){ ch = vet[j]; while(j>pivo){ //reorganiza as coisa vet[j] = vet[j-1]; j--; } vet[j] = ch; pivo++; } } //verificação maior, menor if(pivo-1 >= esq) quick_sort(vet, esq, pivo-1); if(pivo+1 <= dir) quick_sort(vet, pivo+1, dir); } int main(void) { srand(time(NULL)); int *v, n, i; printf("Tamanho do vetor: \n"); scanf("%d", &n); v = (int *)malloc(n*sizeof(int)); for (i=0; i<n; i++){ v[i] = rand() % 100 + 1; } for (i=0; i<n; i++){ printf("%d ", v[i]); } quick_sort(v,0,n-1); printf("\nVetor ordenado \n"); for (i = 0; i < n; i++){ printf("%d ", v[i]); } return 0; }
Editor Settings
Theme
Key bindings
Full width
Lines