Встречается на 2% собеседований по Java

Происходит ли доступ к значению в HashMap за константное время

В идеальном случае доступ к значению в HashMap происходит за константное время O(1). Это достигается благодаря хеш-функции, которая преобразует ключ в индекс корзины (bucket). Однако, если возникает коллизия (несколько ключей попадают в одну корзину), время доступа может ухудшиться до O(n) в худшем случае, так как приходится перебирать элементы в связанном списке или дереве (в Java 8+ при большом количестве коллизий список преобразуется в дерево).

Пример:

java
HashMap<String, Integer> map = new HashMap<>();
map.put("key1", 1);
int value = map.get("key1"); // O(1) в лучшем случае
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы