Middle
Jaká je časová složitost přidání a odstranění prvku ve slovníku v Pythonu?
sobes.tech AI
Odpověď od AI
V Pythonu je slovník implementován na základě hashovací tabulky, což zajišťuje průměrnou časovou složitost O(1) pro operace přidávání a odstraňování prvků.
- Přidání prvku: vypočítá se hash klíče a prvek je vložen do odpovídající buňky. Průměrně to trvá konstantní čas.
- Odstranění prvku: také se provádí pomocí hashe klíče a průměrně trvá O(1).
Nicméně v nejhorším případě (například při velkém počtu kolizí) se operace mohou zhoršit na O(n), kde n je počet prvků ve slovníku, ale takové případy jsou velmi vzácné díky dobré implementaci a dynamickému rozšiřování slovníku.
Příklad:
my_dict = {}
my_dict['key'] = 'value' # přidání — O(1)
del my_dict['key'] # odstranění — O(1)