Изображение стоит тысячи слов.

трел на контейнеры STL и пытался выяснить, что они на самом деле (то есть используемую структуру данных), иDeque остановил меня: сначала я подумал, что это был двойной связанный список, который позволял бы вставку и удаление с обоих концов в постоянное время, но меня беспокоитобещание сделано оператором [] должно быть сделано в постоянное время. В связанном списке произвольный доступ должен быть O (n), верно?

И если это динамический массив, как он можетдобавить элементы в постоянное время? Следует отметить, что может произойти перераспределение и что O (1) является амортизированной стоимостью,как для вектора.

Поэтому мне интересно, что это за структура, которая обеспечивает произвольный доступ в постоянное время, и в то же время никогда не нужно перемещать ее в новое более крупное место.

Ответы на вопрос(7)

Ваш ответ на вопрос