A classificação de um conjunto de itens em uma lista é uma tarefa que ocorre frequentemente na programação de computadores. Muitas vezes, um humano pode executar essa tarefa intuitivamente. No entanto, um programa de computador deve seguir uma sequência de instruções exatas para fazer isso. Essa sequência de instruções é chamada de algoritmo. Um algoritmo de classificação é um método que pode ser usado para colocar uma lista de itens não ordenados em uma sequência ordenada. A sequência de pedidos é determinada por uma chave. Existem vários algoritmos de classificação e diferem em termos de eficiência e desempenho. Alguns algoritmos de classificação importantes e conhecidos são a classificação por bolhas, a seleção, a classificação por inserção e a classificação rápida.
Classificação por bolhas
O algoritmo de classificação por bolhas funciona trocando repetidamente elementos adjacentes que não estão dentro ordem até que toda a lista de itens esteja em sequência. Dessa forma, os itens podem ser vistos subindo na lista de acordo com seus valores-chave.
A principal vantagem da classificação de bolhas é que ela é popular e fácil de implementar. Além disso, no tipo de bolha, os elementos são trocados no local sem o uso de armazenamento temporário adicional, portanto, o requisito de espaço é mínimo. A principal desvantagem do tipo de bolha é o fato de ele não lidar bem com uma lista que contém um grande número de itens. Isso ocorre porque a classificação da bolha requer etapas de processamento n-quadrado para cada n número de elementos a serem classificados. Assim, a classificação por bolhas é adequada principalmente para o ensino acadêmico, mas não para aplicações da vida real.
Classificação por seleção
A classificação por seleção funciona repetidamente na lista de itens, sempre que um item é selecionado. para ordená-lo e colocá-lo na posição correta na sequência.
A principal vantagem do tipo de seleção é que ele apresenta um bom desempenho em uma pequena lista. Além disso, por ser um algoritmo de classificação no local, nenhum armazenamento temporário adicional é necessário além do necessário para manter a lista original. A principal desvantagem do tipo de seleção é sua baixa eficiência ao lidar com uma enorme lista de itens. Semelhante à classificação de bolha, a classificação de seleção requer um número de etapas n-quadrado para classificar n elementos. Além disso, seu desempenho é facilmente influenciado pela ordem inicial dos itens antes do processo de classificação. Por esse motivo, a classificação de seleção é adequada apenas para uma lista de poucos elementos que estão em ordem aleatória.
Classificação de inserção
A classificação de inserção varre repetidamente a lista de itens, cada vez que o item é inserido. seqüência não ordenada em sua posição correta.
A principal vantagem do tipo de inserção é sua simplicidade. Também exibe um bom desempenho ao lidar com uma pequena lista. A classificação por inserção é um algoritmo de classificação no local, portanto, o requisito de espaço é mínimo. A desvantagem da classificação por inserção é que ela não funciona tão bem quanto outros algoritmos de classificação melhores. Com as etapas n-quadrado necessárias para que cada elemento n seja classificado, a classificação por inserção não lida bem com uma lista enorme. Portanto, a classificação por inserção é particularmente útil apenas ao classificar uma lista de poucos itens.
Classificação Rápida
A classificação rápida funciona de acordo com o princípio de dividir e conquistar. Primeiro, ele particiona a lista de itens em duas sublistas, com base em um elemento dinâmico. Todos os elementos da primeira sub-lista são organizados para serem menores que o pivô, enquanto todos os elementos da segunda sub-lista são organizados para serem maiores que o pivô. O mesmo processo de particionamento e organização é executado repetidamente nas sublistas resultantes até que toda a lista de itens seja classificada.
A classificação rápida é considerada o melhor algoritmo de classificação. Isso se deve à sua vantagem significativa em termos de eficiência, pois é capaz de lidar bem com uma enorme lista de itens. Como ele se classifica no local, também não é necessário armazenamento adicional. A pequena desvantagem da classificação rápida é que seu desempenho de pior caso é semelhante ao desempenho médio dos tipos de bolhas, inserções ou seleções. Em geral, a classificação rápida produz o método mais eficaz e amplamente usado para classificar uma lista de qualquer tamanho de item.