January 2018
Intermediate to advanced
374 pages
9h 53m
English
Apart from creating hash values that distribute the keys evenly among the buckets, one can reduce the number of collisions by having many buckets. The average number of elements per bucket is called the load_factor. In the preceding example, we created an unordered_set with 100 buckets. If we add 50 persons to the set, the load_factor would be 0.5. The max_load_factor is an upper limit of the load factor, and when that value is reached, the set will need to increase the number of buckets, and as a consequence also rehash all the elements that are currently in the set. It's also possible to trigger a rehash manually with the rehash and reserve member functions.