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
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.
- Teste entrada vazia, um elemento e duplicados.
- Mostre o estado após cada etapa.
- Compare o desempenho com outra solução.