Junior — Middle
How does the internal state of a HashMap bucket change as the number of inserted elements increases?
sobes.tech AI
Answer from AI
The internal state of a bucket in a HashMap changes as follows when the number of inserted elements increases:
- Initially, the bucket is a linked list of elements stored in a single array cell.
- When the number of elements in the bucket reaches a certain threshold (usually 8), the linked list is transformed into a balanced tree (TreeNode, red-black tree). This improves search time from O(n) to O(log n) within the bucket.
- As the total number of elements in the HashMap continues to grow and the load factor threshold (usually 0.75) is exceeded, a rehash occurs — the size of the bucket array is increased, and elements are redistributed according to new indices.
Thus, the internal state of the bucket changes from a simple list to a tree to optimize performance under high collision conditions.