Встречается на собеседованиях • сегодня
С помощью какой структуры данных реализован ArrayList
ArrayList в Java реализован на основе динамического массива. При создании выделяется начальный capacity (по умолчанию 10), который автоматически увеличивается при заполнении (обычно в 1.5 раза).
Ключевые моменты:
- Быстрый доступ по индексу (O(1))
- Медленные вставка/удаление в середине (O(n))
- Память выделяется непрерывным блоком
Пример увеличения capacity:
java
// Внутри ArrayList
private void grow(int minCapacity) {
int oldCapacity = elementData.length;
int newCapacity = oldCapacity + (oldCapacity >> 1); // Увеличение в ~1.5 раза
elementData = Arrays.copyOf(elementData, newCapacity);
}Использует Object[] для хранения данных, что позволяет работать с любыми типами (с оверхедами из-за autoboxing для примитивов).

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