TRABALHO PAA
CURSO: SISTEMAS DE INFORMAÇÃO
DISCIPLINA: PROJETO E ANALISE DE ALGORITMOS
ALGORITIMOS DE ORDENAÇÃO
ALUNOS:
ANDRÉ LUIZ
KENNEDY PEREIRA
RÔMULO JOSÉ
PEDRO LUCAS
PICOS - 2015
1. INTRODUÇÃO
Algoritmos de ordenação é um algoritmo que coloca os elementos de uma dada sequência em certa ordem, ou seja, recebe os vários elementos e os colocam em ordem. Esses algoritmos desempenham um papel fundamental tanto no estudo teórico de algoritmos quanto nas aplicações práticas, um desses papeis é o acesso a dados de forma mais eficiente. Existem vários algoritmos que executam essa tarefa, alguns desses são simples e outros mais sofisticados, esse trabalho apresenta um estudo comparativo entre três destes algoritmos, mostrando sua ordem de complexidade, comparando seus tempos de execução em melhores e piores casos.
2. DEFINIÇÃO DOS ALGORITMOS
Neste trabalho foca-se em três algoritmos para ordenação bastante usados que são, Selection Sort, Quick Sort e o Insertion Sort. Dentre esses o Selection e Insertion Sort são considerados algoritmos mais simples, já o Quick é considerado mais sofisticado.
3. ASPECTOS HISTÓRICOS
O Selection Sort vem do inglês, ordenação por seleção, esse algoritmo baseia-se em passar sempre o menor valor do vetor para a primeira posição
(ou o maior dependendo da ordem requerida), depois o segundo menor valor para a segunda posição e assim sucessivamente, até os últimos dois elementos. Seu Código implementado em C:
No Selection Sort é escolhido o primeiro número que será comparado com o restante dos números a sua direita, quando encontrado o menor número os dois trocam de posição, então o próximo número é escolhido para realizar a mesma comparação com os demais a sua direita.
O 3 é o primeiro número escolhido, e comparado com os números a sua direita, o menor foi 1, então ocorre a troca.
O próximo número é o 5, a sua direita tem dois números menores que ele, mas o menor entre eles é o 2, então a troca acontece entre eles.
Vetor