Sr. Allan
É um algoritmo que coloca os elementos de uma dada sequência em uma certa ordem em outras palavras, efetua sua ordenação completa ou parcial.
Para escolher um método de ordenação é importante verificar o tempo gasto para ordenar um arquivo.
Algoritmos de ordenação interna utilizam o princípio de comparação de chaves.
Também é importante a quantidade de memória auxiliar utilizada pelo algoritmo.
O objetivo principal da ordenação é facilitar arecuperação posterior de itens do conjunto ordenado.
Inserção
Ordenação por inserção, é um simples algoritmo de ordenação, eficiente quando aplicado a um pequeno número de elementos. Em termos gerais, ele percorre um vetor de elementos da esquerda para a direita e à medida que avança vai deixando os elementos mais à esquerda ordenados. O InsertSort também é um método de simples implementação. Pode ser aprimorado com o uso de sentinela e outras técnicas de algoritmos. É o melhor método para se utilizar quando os arquivos já estão quase ordenados.
Vantagens:
Fácil Implementação
Algoritmo Estável
O vetor já ordenado favorece a ordenação
Desvantagens:
Número grande de movimentações
Ordem de complexidade quadrática
Ineficiente quando o vetor está ordenado inversamente
Quicksort
O Quicksort é um algoritmo de ordenação por comparação não-estável.
O Quicksort adota a estratégia de divisão e conquista. A estratégia consiste em rearranjar as chaves de modo que as chaves "menores" precedam as chaves "maiores". Em seguida o Quicksort ordena as duas sublistas de chaves menores e maiores recursivamente até que a lista completa se encontre ordenada.
Vantagens:
Extremamente Eficiente
Necessita apenas de um pequena pilha como memória extra Complexidade
Desvantagens:
Tem um pior caso de O(n2) Implementação difícil
Não é estável
ShellSort
A ordenação Shell utiliza a quebra sucessiva da sequência a ser ordenada e implementa a ordenação por inserção na sequência obtida. Por ser um método de complexidade