Встречается на собеседованиях • сегодня
Как увеличивается ArrayList при последовательном добавлении n элементов
ArrayList увеличивает свою вместимость динамически. При добавлении элементов:
1. Изначально создаётся массив размером 10 (если не указан другой начальный размер)
2. При заполнении текущего массива создаётся новый массив размером в 1.5 раза больше (старыйCapacity * 1.5)
3. Элементы копируются в новый массив
Пример:
```java
List list = new ArrayList<>(); // capacity=10
for(int i=0; i<100; i++) {
list.add(i); // при i=10,20,30... capacity увеличивается
}
```
При добавлении n элементов происходит O(n) операций, амортизированная сложность добавления - O(1). Копирование элементов при расширении делает добавление медленнее, чем у LinkedList, но доступ по индексу быстрее.

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