Встречается на собеседованиях • сегодня
Какие знаешь основные реализации листовых коллекций
ArrayList - реализация на основе динамического массива. Быстрый доступ по индексу (O(1)), но медленные вставка/удаление в середине (O(n)). Пример:
```java
List list = new ArrayList<>();
list.add("a"); // O(1) amortized
String el = list.get(0); // O(1)
```
LinkedList - реализация на основе двусвязного списка. Медленный доступ по индексу (O(n)), но быстрые вставка/удаление (O(1)). Пример:
```java
List list = new LinkedList<>();
list.add("a"); // O(1)
list.addFirst("b"); // O(1)
```
Vector - устаревший аналог ArrayList с синхронизированными методами (потокобезопасный, но менее производительный).
CopyOnWriteArrayList - потокобезопасный вариант ArrayList, где все мутирующие операции создают новую копию массива. Подходит для редких изменений и частого чтения.

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