Коэффициент загрузки HashSet
Если я использую HashSet
с начальной емкостью 10 и коэффициентом загрузки 0,5
то каждые 5 элементов добавлены HashSet
будут увеличены или сначала HashSet
увеличивается на 10 элементов, а после - на 15 при 20 ат. емкость будет увеличена?
Ответы
Ответ 1
Коэффициент загрузки - это показатель того, насколько полный доступ к HashSet может быть достигнут до того, как его емкость будет автоматически увеличена. Когда количество записей в хэш-таблице превышает произведение коэффициента загрузки и текущей емкости, хеш-таблица повторно отображается (то есть внутренние структуры данных перестраиваются), так что хэш-таблица имеет примерно вдвое больше количества ковшей.
источник
Ответ 2
Это второй случай. LoadFactor как HashSet, так и hashMap является относительным фактором.
Ответ 3
Начальная емкость по умолчанию для HashMap составляет 16, а коэффициент загрузки - 0,75f (т.е. 75% от текущего размера карты). Коэффициент загрузки показывает, на каком уровне емкость HashMap должна быть удвоена.
Например, произведение емкости и коэффициента загрузки как 16 * 0,75 = 12. Это означает, что после хранения 12-й пары ключ-значение в HashMap ее емкость становится 32.