Algoritmos em Python

Busca binária em Python

A busca binária reduz pela metade o intervalo restante a cada comparação.

O que é Busca binária em Python?

A busca binária reduz pela metade o intervalo restante a cada comparação.

Encontre um valor em uma lista ordenada.

Quando usar?

  • Entender algoritmos e estruturas de dados.
  • Observar cada etapa e tratar casos de borda.
  • Comparar tempo de execução e memória.

Visualizador de Busca binária em Python

O(log n)

Use Executar ou Passo para acompanhar cada comparação e movimento dos dados.

Código de exemplo

Executar código →
main.py
def binary_search(values, target):
    low, high = 0, len(values) - 1
    while low <= high:
        middle = (low + high) // 2
        if values[middle] == target:
            return middle
        if values[middle] < target:
            low = middle + 1
        else:
            high = middle - 1
    return -1

print(binary_search([3, 8, 12, 17, 25, 31], 17))

Saída esperada

3

Como funciona

O valor central decide qual metade manter. Tempo O(log n); a entrada deve estar ordenada.

Altere os valores e execute o programa no compilador Python online CodeUtility sem instalar Python.

Exercícios práticos

Altere as entradas e teste casos de borda antes de usar conjuntos de dados maiores.

  1. Teste entrada vazia, um elemento e duplicados.
  2. Mostre o estado após cada etapa.
  3. Compare o desempenho com outra solução.
Executar no IDE Python →