Considere as seguintes definições relacionadas a algoritmos de ordenação e assinale a alternativa
que identifica corretamente as três definições, considerando sua ordem.
1. O algoritmo consiste em percorrer o vetor de itens desordenados da esquerda para a direita,
ordenando um item por vez. A cada passo, o item não ordenado é comparado aos itens à sua
esquerda (os quais já estão ordenados) de modo a encontrar em qual posição ele deve ser
colocado. Esses passos são repetidos para cada um dos itens não ordenados restantes. O
algoritmo termina quando o último item do vetor é colocado na posição correta.
2. O algoritmo divide logicamente o vetor em duas partições: uma partição contendo itens ordenados,
que é construída da esquerda para a direita na frente (esquerda) do vetor, e uma partição
contendo itens restantes não ordenados que ocupam o resto do vetor. Inicialmente, a partição
ordenada está vazia e a partição não ordenada é o próprio vetor de entrada. Em cada passo, o
algoritmo encontra o menor item na partição não ordenada, trocando-o com o item não ordenado
mais à esquerda da partição (colocando-o, portanto, em ordem). Então, o limite lógico entre as
partições ordenada e não ordenada é incrementado em uma posição e os passos anteriores são
repetidos. O algoritmo termina quando resta apenas um item a ser ordenado.
3. O algoritmo divide o problema em partes menores, resolvendo cada parte separadamente e
juntando os resultados posteriormente. O vetor é dividido em duas partes iguais, sendo cada uma
delas dividida em duas partes, e assim por diante, até restarem partes com um ou dois itens, cuja
ordenação é trivial. Para juntar pares de partes ordenadas, os dois primeiros itens de cada parte
são separados e o menor deles é selecionado e posicionado como primeiro elemento. Em
seguida, os menores entre os restantes são comparados e posicionados e assim se prossegue até
que todos os elementos tenham sido juntados. O procedimento é repetido até que todas as partes
tenham sido tratadas.