38
правок
Изменения
→Изменение элемента
===Изменение элемента===
Для того, чтобы изменить элемент в персистентном дереве отрезков, необходимо сделать следующие действия: найдем спустимся в дереве требуемый элементот корня нужной версии до требуемого элемента, скопируем его, изменим значение, и, поднимаясь по дереву, будем клонировать узлы. При этом необходимо менять указатель на одного из детей на узел, созданный при предыдущем клонировании. Кроме того, указатель на родителя будем менять при клонировании следующего элемента. После копирования корня, добавим новый корень в конец массива корней.
[[Файл:persist.png]]