Ordenação bubble sort
Bubble sort é o algoritmo clássico para entender ordenação por trocas. Em código real, você não vai usá-lo para grandes conjuntos de dados — preferirá o método sort() nativo ou algoritmos eficientes como quicksort. Mas dominar bubble sort solidifica sua lógica de loops aninhados e manipulação de arrays, habilidades essenciais para programação de baixo nível, sistemas embarcados ou entrevistas técnicas. Além disso, ele serve como base para entender variações como insertion sort e selection sort.
O PROBLEMA
Declare array com 7 números. Ordene com bubble sort sem usar sort().
EXEMPLO
[64,34,25,12,22,11,90] Final: [11,12,22,25,34,64,90]
SOBRE O CONCEITO
Bubble sort percorre o array várias vezes, comparando pares adjacentes e trocando-os se estiverem na ordem errada. O loop interno (com for) deve ir até arr.length - i - 1 porque a cada passagem externa o maior elemento já está na posição final. Erro comum: definir o limite do loop interno como arr.length causa comparações desnecessárias e pode acessar índice fora dos limites. Outro erro frequente é a troca incorreta: sem usar uma variável temporária (let temp = arr[j]; arr[j] = arr[j+1]; arr[j+1] = temp), um valor é sobrescrito e perdido. O operador > deve ser usado na comparação. Lembre-se: o array é declarado com const, mas seus elementos podem ser modificados; isso é permitido. O loop externo executa arr.length - 1 vezes para garantir que todos os elementos sejam comparados.
RESOLUÇÃO