aeds2/fonte/u03 Ordenação em memória pr.../c/principal.c

61 lines
1.4 KiB
C

#include "bolha.h"
#include "countingsort.h"
#include "radixsort.h"
#include "heapsort.h"
#include "insercao.h"
#include "mergesort.h"
#include "quicksort.h"
#include "selecao.h"
#include "shellsort.h"
#include "geracao.h"
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
//=============================================================================
int main(int argc, char **argv) {
//Delcaracao de variaveis
int n = (argc < 2) ? 1000 : atoi(argv[1]);
int *array = (int*) malloc(n*sizeof(int));
clock_t inicio, fim;
double total;
//Geracao do conjunto a ser ordenado
aleatorio(array, n);
//crescente(array, n);
//decrescente(array, n);
//Mostrar o conjunto a ser ordenado
//mostrar(array, n);
//Execucao do algoritmo de ordenacao
inicio = clock();
//bolha(array, n);
//countingsort(array, n);
//heapsort(array, n);
//insercao(array, n);
//mergesort(array, n);
//quicksort(array, n);
//selecao(array, n);
radixsort(array,n);
//shellsort(array, n);
fim = clock();
total = ((fim - inicio) / (double)CLOCKS_PER_SEC);
//Mostrar o conjunto ordenado, tempo de execucao e status da ordenacao
//algoritmo.mostrar(array, n);
printf("Tempo para ordenar: %f s.\n", total);
printf("isOrdenado: %s\n", isOrdenado(array, n) ? "true" : "false");
//Desalocar o espaco de memoria do array
free(array);
return 0;
}