← Back to list

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…

Francis Monteles · 2025-09-22 12:01 · 0 claps · 2.5 min read
#python #bubble-sort #algorithms #programação #estruturas-de-dados
Open on Medium ↗
Wiki topics: 💻 · Programming

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