Template de função de Selection Sort. Escreva uma função selectionSort (ver Apêndice F para obter informações sobre essa técnica de classificação). Escreva um programa controlador que insira, classifique e imprima um array de int e um array de float.

Passo 1

Beleza pessoal, no exercício de hoje vamos implementar a funcionalidade de modelo em uma função de classificação de seleção e testá-la com valores do tipo int e float.

Vamos criar as seguintes funções:

modelo

void selectionSort(T[], int);

modelo

void swap(T[], int, int);

modelo

void printPass(T[], int, int, int);

Passo 2

Função de classificação de seleção

Adicionar a instrução de modelo antes do cabeçalho da função torna a função uma função de modelo.

Com essa adição, podemos usar o tipo T genérico que será definido para um determinado tipo assim que a função de modelo receber algo.

modelo

void selectionSort(T array[], int length)

{

...

}

Defina o algoritmo de classificação (bem explicado no Apêndice F):

Passo 3

As funções adicionais também precisarão ser convertidas em funções de modelo da seguinte forma:

modelo

void swap(T array[], int primeiro, int segundo)

{

temperatura interna;

temp = array[primeiro];

array[primeiro] = array[segundo];

array[segundo] = temp;

}

modelo

void printPass(T array[], int comprimento,

passagem int, índice int)

{

cout setw(2)

for (int i = 0; i

cout

cout

for (int i = índice + 1; i

cout

cout

for (int i = 0; i

cout

cout

}

Demonstração

Vamos criar e passar um array inteiro e um float para a função sort no main:

int main()

{

int arrInteger[5] = { 4, 3, 2, 1, 0 };

selectionSort(arrInteger, 5);

float arrFloat[5] = { 4.5f, 3.5f, 2.5f, 1.5f, 0.5f };

selectionSort(arrFloat, 5);

}

Resposta

Ver desenvolvimento!