Junior — Middle
Kui suur on uue elemendi lisamise ajakulud sõnastikku?
sobes.tech AI
Vastus AI-lt
Sõnastiku (näiteks Swift Dictionary või Objective-C NSMutableDictionary) uue elemendi lisamise ajakulud on tavaliselt O(1) keskmiselt. See on tingitud sellest, et sõnastik on rakendatud hash-tabeli alusel, kus hash'i arvutamine ja sisestamine toimuvad konstantsel ajal.
Kuid halvimates tingimustes, kokkupõrgete või sisemise massiivi laiendamise vajaduse korral, võib keerukus ajutiselt tõusta kuni O(n), kus n on elementide arv.
Näide Swiftis:
var dict = [String: Int]()
dict["key"] = 42 // Keskmiselt lisamine O(1)