Сложность добавления элемента в конец массива в iOS

Вставка элемента в конец массива в iOS зависит от типа массива:

Короткий ответ

Что ответить на собеседовании

Вставка элемента в конец массива в iOS зависит от типа массива:

Подробный разбор

Ответ с пояснениями

Вставка элемента в конец массива в iOS зависит от типа массива:

  • Для массивов фиксированного размера (например, C-массивы) вставка в конец невозможна без создания нового массива.
  • Для NSMutableArray или Swift-массивов, которые динамически изменяют размер, вставка в конец обычно выполняется за амортизированное O(1) время. Это значит, что обычно добавление происходит быстро, но иногда, когда массив достигает своей текущей ёмкости, происходит перераспределение памяти и копирование элементов, что занимает больше времени.

Пример на Swift:

var array = [1, 2, 3]
array.append(4) // Обычно O(1), иногда O(n) при перераспределении

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее