''Персистентными структурами данных'' называются структуры, хранящие все свои промежуточные версии.
Рассмотрим такую структуру на примере [[стек|стека]].
== Наивная реализация ==
Самое простое и очевидное решение этой задачи — честное копирование стека при каждой операции. <br>
Очевидно, это не самое эффективное решение. Сложность одной операции составляет <tex>O(n)</tex> и количество требуемой памяти — <tex>O(n^2)</tex>.
== Эффективная реализация ==