Bubble Sort

Definição

O Bubble Sort é um algoritmo de ordenação simples que percorre repetidamente a lista, comparando pares de elementos adjacentes e os trocando de lugar se estiverem fora de ordem.

A cada passada completa, o maior valor entre os elementos comparados vai sendo movido para a última posição disponível da lista.

Apesar de sua simplicidade, é pouco eficiente para listas grandes.

Por que usar

  • Fácil de entender e implementar;
  • Útil para fins didáticos e ensino de algoritmos;
  • Pode ser adequado em casos muito simples, onde a performance não é relevante.

Complexidade

Caso Tempo
Melhor caso O(n)
Médio caso O(n²)
Pior caso O(n²)
  • Estável? Sim
  • Espaço adicional: O(1)

(Um algoritmo de ordenação é estável quando mantém a ordem original de elementos iguais após a ordenação.)

Exemplo prático (Python)

def bubble_sort(lista):
    n = len(lista)
    for i in range(n):
        trocou = False
        for j in range(0, n - i - 1):
            if lista[j] > lista[j + 1]:
                lista[j], lista[j + 1] = lista[j + 1], lista[j]
                trocou = True
        if not trocou:
            break  # lista já está ordenada

numeros = [5, 3, 8, 1, 2]
bubble_sort(numeros)
print(numeros)  # [1, 2, 3, 5, 8]

Visualização do processo

Dada a lista: [5, 3, 8, 1, 2]

  • Passo 1: [3, 5, 1, 2, 8]
  • Passo 2: [3, 1, 2, 5, 8]
  • Passo 3: [1, 2, 3, 5, 8] → fim

Relacionados

Política de Privacidade

Copyright © www.programicio.com Todos os direitos reservados

É proibida a reprodução do conteúdo desta página sem autorização prévia do autor.

Contato: programicio@gmail.com