Какова асимптотическая сложность операций вставки и удаления элементов в контейнерах list и vector?

std::vector:

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

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

std::vector:

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

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

std::vector:

Операция Асимптотическая сложность Примечания
Вставка O(N) в худшем случае Требует сдвига всех последующих элементов.
Вставка в конец (push_back) Амортизированная O(1) Может потребовать перевыделения памяти O(N).
Удаление O(N) в худшем случае Требует сдвига всех последующих элементов.
Удаление с конца (pop_back) O(1) Не требует сдвигов.

std::list:

Операция Асимптотическая сложность Примечания
Вставка O(1) Требует лишь изменения указателей.
Удаление O(1) Требует лишь изменения указателей.

Практика в реальном времени

Подготовьтесь к следующему собеседованию

Interview Boost учитывает вакансию, резюме и технологии и помогает сформулировать ответ прямо во время интервью.

Начать подготовку