Algoritmos em Python

Algoritmo Two Sum em Python

Uma tabela hash evita dois loops aninhados.

O que é Algoritmo Two Sum em Python?

Uma tabela hash evita dois loops aninhados.

Encontre dois valores cuja soma seja o alvo.

Quando usar?

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

Código de exemplo

Executar código →
main.py
def two_sum(values, target):
    seen = {}
    for index, value in enumerate(values):
        complement = target - value
        if complement in seen:
            return [seen[complement], index]
        seen[value] = index
    return []

print(two_sum([2, 7, 11, 15], 9))

Saída esperada

[0, 1]

Como funciona

O complemento é consultado em O(1): tempo total O(n), memória O(n).

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 →