|
Ordencao_exemplo 1.0
|
#include <Algoritmos.h>#include <Temporizador.h>#include "MergeSortMestre.h"#include "QuickSortMestre.h"#include "VetorOrdenadoMestre.h"#include <iostream>#include <cstdlib>#include <cassert>#include <cstring>Funções | |
| int | main (int argc, char *argv[]) |
| int main | ( | int | argc, |
| char * | argv[] | ||
| ) |
arg[1] é o nome do arquivo de entrada do vetor desordenado, ou um numero para o tamanho do vetorDesordenado. arg[2] é o numero de tamanho do é pequeno. Este parâmetro é opcional. Caso omitido deve-se considerar valor 1.
< Pelo menos dois argumentos tem que haver em argv, o nome do programa e um primeiro parâmetro
<caso tenha três parâmetros, o terceiro é o valor de ehPequeno.
< caso não tenha ehPequeno recebe valor default 1.
< Nesse loop verifica-se o segundo argumento é somente um numero, ou um nome de arquivo.
< caso o segundo argumento seja um nome de arquivo abrimos o arquivo:
< caso o segundo argumento seja um numero cria-se um vetor com esse numero de tamanho, detalhe o preenchimento desse vetor de exemplo é aleatório:
< O objeto VetorOrdenadoMestre vetOrd1 que recebe o ponteiro para vet e tamanho dele.
O objeto MergeSortMestre mg que recebe o valor do ehPequeno, o ponteiro para vet e uma referência para a solução vetOrd1.
< Aplicando o dividirParaConquistar no MergeSorteMestre mg, que dará uma solução em vetOrd1.
< O objeto VetorOrdenadoMestre vetOrd2 que recebe o ponteiro para vet e tamanho dele.
< O objeto QuickSortMestre qs que recebe o valor do ehPequeno, o ponteiro para vet e uma referência para a solução vetOrd1.
< Aplicando o dividirParaConquistar no QuickSorteMestre qs, que dará uma solução em vetOrd2.
< Caso tenha lido de um arquivo será escrito os resultados e outros dois arquivos.
< Caso tenha gerado um vetor de exemplo será impresso na tela os resultados:
< por fim deleta-se o vet pois foi alocado aqui no main.