Sobes.tech
Junior — Middle

Aká je časová zložitosť pridania nového prvku do slovníka?

sobes.tech AI

Odpoveď od AI

Časová zložitosť operácie pridania nového prvku do slovníka (napríklad Dictionary v Swift alebo NSMutableDictionary v Objective-C) je zvyčajne O(1) v priemere. To je spôsobené tým, že slovník je implementovaný na základe hash tabuľky, kde výpočet hashu a vloženie prebieha v konštantnom čase.

Avšak v najhoršom prípade, pri kolíziách alebo potrebe rozšírenia vnútorného poľa, môže časová zložitosť dočasne vzrásť na O(n), kde n je počet prvkov.

Príklad v Swift:

var dict = [String: Int]()
dict["key"] = 42 // Pridanie v priemere v O(1)