Встречается на собеседованиях • сегодня
В чем разница между HashSet, LinkedHashSet и TreeSet
`HashSet` использует хеш-таблицу для хранения элементов, обеспечивая вставку/удаление за O(1), но без гарантии порядка.
`LinkedHashSet` расширяет `HashSet`, сохраняя порядок вставки (двусвязный список + хеш-таблица), но с чуть большими накладными расходами.
`TreeSet` хранит элементы в отсортированном порядке (красно-черное дерево), обеспечивая O(log n) для операций, но требует `Comparable` или `Comparator`.
Пример:
```java
Set hashSet = new HashSet<>(Arrays.asList(3, 1, 2)); // [1, 2, 3] (порядок не гарантирован)
Set linkedSet = new LinkedHashSet<>(Arrays.asList(3, 1, 2)); // [3, 1, 2] (порядок вставки)
Set treeSet = new TreeSet<>(Arrays.asList(3, 1, 2)); // [1, 2, 3] (сортировка)
```
Выбор зависит от потребности в порядке или скорости.

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы