Junior — Middle
How is the data structure map implemented for storing and accessing key-value pairs within the system?
sobes.tech AI
Answer from AI
In Go, the data structure map is implemented as a hash table that provides fast access to values by keys. When adding a key-value pair, the key is hashed, and the hash determines the index in the bucket array where the value is stored.
Main implementation points:
- Open addressing with chaining is used to resolve collisions.
- In case of collisions, elements are stored in linked lists within the buckets.
- When the number of elements grows, reorganization (rehash) occurs to maintain performance.
Example of using map in Go:
m := make(map[string]int)
m["apple"] = 5
value, exists := m["apple"]
if exists {
fmt.Println("Value for 'apple':", value)
}