Junior — Middle
How is the execution time of adding an element by key in a data structure Map determined?
sobes.tech AI
Answer from AI
In Go, the data structure map is implemented as a hash table. The average time complexity for adding an element by key to a map is O(1) — constant time, as it involves computing the hash function of the key and inserting it into the corresponding bucket.
However, in the worst case, if many collisions occur (several keys have the same hash), the time can degrade to O(n), where n is the number of elements in the bucket. But thanks to good hash distribution and dynamic resizing of the table, such cases are rare.
Example of adding an element to a map:
m := make(map[string]int)
m["key"] = 42 // the add operation is performed in amortized O(1)