BUBBLE SORT
Por ser simples e de entendimento e implementação fáceis, o Bubblesort (bolha) está entre os mais conhecidos e difundidos métodos de ordenação de arranjos. Mas não se trata de um algoritmo eficiente, é estudado para fins de desenvolvimento de raciocínio.
O princípio do Bubblesort é a troca de valores entre posições consecutivas, fazendo com que os valores mais altos ( ou mais baixos ) "borbulhem" para o final do arranjo (daí o nome Bubblesort).
Exemplo ordenação em ordem crescente de valores.
5 - 3 - 1 - 4 - 2
Primeiro compara-se as duas primeiras posições, nesse caso o número 5 e 3; caso o primeiro número seja maior que o segundo, deve-se fazer uma troca. Lembrando que isso para ordem crescente, para decrescente haveria troca se o primeiro número fosse menor que o primeiro.
Como 5 é maior que 3, deve-se fazer a troca:
3 - 5 - 1 - 4 - 2
Após isso, é necessário executar o mesmo passo até o fim da sequência:
5 é maior que 1, então:
3 - 1 - 5 - 4 - 2
5 é maior que 4, logo:
3 - 1 - 4 - 5 - 2
e por último, 5 é maior que 2:
3 - 1 - 4 - 2 - 5
Repare que com isso o último item está em seu lugar adequado. Agora é necessário ordenar o resto da sequência, porém o último item não precisará ser verificado novamente.
3 é maior que 1:
1 - 3 - 4 - 2 - 5
4 é maior que 2:
1 - 3 - 2 - 4 - 5
4 já está em sua posição certa, então deverá aplicar o algoritmo novamente porém somente até a terceira posição e assim sucessivamente, chegado ao resultado desejado:
1 - 2 - 3 - 4 - 5
O bubble sort, ou ordenação por flutuação (literalmente "por bolha"), é um algoritmo de ordenação dos mais simples. A ideia é percorrer o vector diversas vezes, a cada passagem fazendo flutuar para o topo o maior elemento da sequência. Essa movimentação lembra a forma como as bolhas em um tanque de água procuram seu próprio nível, e disso vem o nome do algoritmo.
No melhor caso, o algoritmo executa n operações relevantes, onde n representa o