Bubble Sort em Python: entenda passo a passo o algoritmo de ordenação mais simples
Quando estamos começando a programar, entender como as coisas funcionam por dentro é tão importante quanto ver o resultado final. O Bubble…
Bubble Sort em Python: entenda passo a passo o algoritmo de ordenação mais simples

Quando estamos começando a programar, entender como as coisas funcionam por dentro é tão importante quanto ver o resultado final. O Bubble Sort, apesar de não ser o algoritmo mais rápido, é um dos melhores pontos de partida para compreender a lógica de ordenação e fortalecer as bases em Python.
O que é o Bubble Sort e por que aprender em Python
O Bubble Sort é um algoritmo de ordenação simples que funciona comparando pares de elementos vizinhos e trocando-os de lugar quando estão fora de ordem. A cada passada, o maior número “borbulha” para o final da lista — daí vem o nome.
Aprender o Bubble Sort em Python ajuda a visualizar loops, condições e manipulação de listas. É como treinar os fundamentos antes de avançar para algoritmos mais sofisticados.
Código completo do Bubble Sort em Python
Aqui está a versão funcional do algoritmo:
import random
def bubble_sort(arr):
n = len(arr)
for i in range(n):
for j in range(0, n-i-1):
if arr[j] > arr[j + 1]:
arr[j], arr[j+1] = arr[j+1], arr[j]
return arr
list_num = list(range(1, 101))
arr = random.sample(list_num, k=10)
print("Original array: ", arr)
sorted_arr = bubble_sort(arr)
print("Sorted array: ", sorted_arr)
Explicação passo a passo do algoritmo Bubble Sort
O laço externo
O primeiro for percorre a lista várias vezes. Cada passada garante que um dos maiores elementos seja levado ao final da lista.
O laço interno
O segundo for compara elementos vizinhos (arr[j] e arr[j+1]). O limite n-i-1 diminui a cada passada, já que os maiores valores já estão ordenados no final.
Comparação e troca de elementos
Quando arr[j] > arr[j+1], os dois são trocados de posição. Em Python, isso é feito de forma elegante com:
arr[j], arr[j+1] = arr[j+1], arr[j]
Exemplo prático: ordenando uma lista aleatória em Python
O trecho:
arr = random.sample(list_num, k=10)
gera 10 números aleatórios e distintos de 1 a 100. Assim você consegue ver o algoritmo funcionando em diferentes situações.
Saída típica:
Original array: [42, 7, 89, 15, 63, 2, 74, 38, 51, 10]
Sorted array: [2, 7, 10, 15, 38, 42, 51, 63, 74, 89]
Visualizando o Bubble Sort em ação
Pegue a lista [3, 1, 4, 2].
- Comparando 3 e 1 → troca → [1, 3, 4, 2]
- Comparando 4 e 2 → troca → [1, 3, 2, 4]
- Na passada seguinte → [1, 2, 3, 4]
Esse passo a passo mostra o “borbulhar” dos números até ficarem em ordem.
Limitações e vantagens do Bubble Sort em Python
- Vantagem: simples de entender, ótimo para aprendizado.
- Limitação: muito lento para listas grandes (complexidade O(n²)).
- Na prática: em projetos reais, use a função sorted() do Python ou algoritmos mais eficientes como Quick Sort ou Merge Sort.
Exercícios para praticar o Bubble Sort em Python
Ordenando listas menores
Tente rodar o algoritmo com apenas 5 números e acompanhe as trocas linha por linha.
Bubble Sort em ordem decrescente
Altere o:
if arr[j] > arr[j+1] para if arr[j] < arr[j+1]
Imprimindo cada troca passo a passo
Adicione print(arr) dentro do laço interno para acompanhar a evolução da lista em cada troca.
Conclusão: o papel do Bubble Sort no aprendizado de programação
O Bubble Sort não é usado em sistemas modernos, mas é um marco no aprendizado de lógica. Ele mostra como pequenos passos organizam o caos e ensina a pensar como programador.
Ao dominar esse algoritmo, você ganha confiança para explorar estruturas de dados mais complexas e algoritmos mais rápidos.
E lembre-se: cada linha de código que você entende é um degrau a mais na jornada para se tornar um programador melhor.
메타데이터
- post_id
- f6d8d69b8895
- slug
- bubble-sort-em-python-entenda-passo-a-passo-o-algoritmo-de-ordenação-mais-simples-f6d8d69b8895
- url
- https://medium.com/@francismonteles2010/bubble-sort-em-python-entenda-passo-a-passo-o-algoritmo-de-ordena%C3%A7%C3%A3o-mais-simples-f6d8d69b8895
- canonical_url
- https://medium.com/@francismonteles2010/bubble-sort-em-python-entenda-passo-a-passo-o-algoritmo-de-ordena%C3%A7%C3%A3o-mais-simples-f6d8d69b8895
- author_url
- https://medium.com/@francismonteles2010
- status
- ok
- fetched_at
- 2026-07-24 22:13:21