Sobes.tech
Middle

Care este complexitatea temporală a adăugării și eliminării unui element într-un dicționar în Python?

sobes.tech AI

Răspuns de la AI

În Python, dicționarul este implementat pe baza unei tabele hash, ceea ce asigură în medie o complexitate temporală O(1) pentru operațiile de adăugare și eliminare a elementelor.

  • Adăugarea unui element: se calculează hash-ul cheii, iar elementul este inserat în celula corespunzătoare. În medie, acest lucru durează un timp constant.
  • Eliminarea unui element: se face de asemenea pe baza hash-ului cheii și durează în medie O(1).

Totuși, în cel mai rău caz (de exemplu, cu multe coliziuni), operațiile pot degrada la O(n), unde n este numărul de elemente din dicționar, dar astfel de cazuri sunt extrem de rare datorită unei bune implementări și extinderii dinamice a dicționarului.

Exemplu:

my_dict = {}
my_dict['key'] = 'value'  # adăugare — O(1)
del my_dict['key']          # eliminare — O(1)