Встречается на собеседованиях • сегодня

Какая алгоритмическая сложность вставки в конец List

В Java List имеет разные реализации, и сложность вставки в конец зависит от конкретного типа:

  1. ArrayList:
    В среднем O(1), но если требуется расширение массива (когда capacity превышен), то O(n) из-за копирования элементов.
    java
    list.add(element); // O(1) амортизированно
  1. LinkedList:
    Всегда O(1), так как добавление происходит через изменение ссылок последнего узла.

    java
    list.add(element); // O(1)
  2. CopyOnWriteArrayList:
    O(n) из-за создания новой копии массива при каждой модификации.

Для частых вставок в конец ArrayList обычно эффективен благодаря низкой константе в O(1) (амортизированно), но если важен гарантированный O(1), выбирайте LinkedList.

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

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

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

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