Блог пользователя Azret

Автор Azret, история, 11 лет назад, По-русски

Всем привет!

Сейчас решал задачу и тут понадобилось реализовать копирование декартова дерева, в частности у меня есть дерево T и его нужно скопировать и смержить в конец двух других деревьев. Возможно ли это сделать без обхода всего дерева?

UPD Пишу на указателях.

  • Проголосовать: нравится
  • +8
  • Проголосовать: не нравится

»
11 лет назад, скрыть # |
 
Проголосовать: нравится +10 Проголосовать: не нравится

Чтобы делать это достаточно эффективно, нужно персистентное декартово дерево. Персистентная структура данных -- это такая, в которой хранятся все предыдущие состояния. При изменении любой вершины она копируется и изменяется только копия, а оригинальная вершина остаётся в прежнем состоянии. Таким образом, копирование -- просто копирование указателя.

Почитать можно, например, тут; наверняка на КФ можно ещё чего-то нарыть.

»
11 лет назад, скрыть # |
 
Проголосовать: нравится -67 Проголосовать: не нравится

Если ты такой умный, то почему такой синий?