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

Как достигается сложность операций в Hashtable близкой к O(1)

Hashtable достигает O(1) сложности за счет хеширования и правильного размера массива. Ключевые моменты:

  1. Хеш-функция равномерно распределяет элементы по бакетам, минимизируя коллизии
  2. Размер массива выбирается простым числом для лучшего распределения
  3. Рехеширование при достижении load factor (по умолчанию 0.75)

Пример:

java
Hashtable<String, Integer> table = new Hashtable<>();
table.put("key", 42); // O(1) в лучшем случае

В худшем случае (все ключи в одном бакете) сложность деградирует до O(n). Для предотвращения Java 8+ использует сбалансированные деревья вместо списков при большом количестве коллизий.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

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

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

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