Sobes.tech
Middle

Qual é a complexidade temporal de adicionar e remover um elemento em um dicionário em Python?

sobes.tech IA

Resposta da IA

Em Python, o dicionário é implementado com base numa tabela de hash, o que garante uma complexidade temporal O(1) em média para operações de adição e remoção de elementos.

  • Adicionar elemento: calcula-se o hash da chave, e o elemento é inserido na célula correspondente. Em média, isto leva um tempo constante.
  • Remover elemento: também ocorre pelo hash da chave e, em média, leva O(1).

No entanto, no pior caso (por exemplo, com muitas colisões), as operações podem degradar para O(n), onde n é o número de elementos no dicionário, mas esses casos são extremamente raros graças a uma boa implementação e expansão dinâmica do dicionário.

Exemplo:

my_dict = {}
my_dict['key'] = 'value'  # adição — O(1)
del my_dict['key']          # remoção — O(1)