#include "sortui.h" /*! * \file selectsort.c * \brief Módulo com o algoritmo selectsort. * * \date 30-05-2012 17:53:00 * \version 0.0.1 * \author Alessandro Elias, ae11@inf.ufpr.br * \author Ruanito Diego Santos, rds11@inf.ufpr.br */ /*! * Algoritmo selectsort. * * \param [in] vetor[] - vetor desordenado. * \param [in, out] vetorselect - vetor receberá uma cópia do vetor desordenado * e retornará o vetor ordenado. * \param [out] permutacao - retorna o número de perutação que foram necessárias * para ordenar vetorselect. * \param [out] comparacao - retorna número de comparações feitas para ordenar * vetorselect. */ void selectsort(const int vetor[], int vetorselect[], int *permutacao, int *comparacao){ int i, j, aux, min; for(i = 1; i < SIZE_OF_ARRAY; i++) //o vetor que será usado o selectsort recebe os valores vetorselect[i] = vetor[i]; *comparacao = 0; *permutacao = 0; for(i = 1; i < SIZE_OF_ARRAY-1; i++) { min = i; for( j = i + 1; j < SIZE_OF_ARRAY; j++ ) { if( vetorselect[j] < vetorselect[min] ) min = j; (*comparacao)++; //toda vez que comparar soma no contador } aux = vetorselect[min]; vetorselect[min] = vetorselect[i]; vetorselect[i] = aux; (*permutacao)++; }/* for(i */ }/* selectsort */