424 читали · 1 год назад
Java 636. Как HashSet работает внутри Java?
HashSet внутри Java работает по принципу хэш-таблицы. Хэш-таблица - это структура данных, которая позволяет быстро добавлять, удалять и искать элементы. В HashSet каждый элемент имеет свой уникальный хэш-код, который используется для определения его местоположения в хэш-таблице. HashSet содержит массив элементов и список связанных списков (bucket), где каждый элемент помещается в соответствующий bucket на основе его хэш-кода. Когда элемент добавляется в HashSet, сначала вычисляется его хэш-код, затем он помещается в bucket, соответствующий этому хэш-коду...
154 читали · 1 год назад
Под "капотом" HashSet
HashSet в Java представляет собой коллекцию, которая не допускает дублирования элементов и не гарантирует порядок хранения элементов. Внутри HashSet используется HashMap, где ключи - это элементы коллекции, а значения - это заглушки (dummy values), которые используются для эффективного хранения элементов. Когда элемент добавляется в HashSet, он сначала проверяется на наличие в HashMap. Если элемент уже присутствует в HashMap, то он не добавляется в HashSet. Если элемент отсутствует в HashMap, то он добавляется в HashMap как ключ с заглушкой в качестве значения, а затем ключ добавляется в HashSet...