Изменения

Перейти к: навигация, поиск

Link-Cut Tree

41 байт добавлено, 21:36, 10 июня 2014
LCA
===LCA===
C помощью link-cut-дерева можно найти наименьшего общего предка:
'''tree'''lca(u: '''tree''', v: '''tree'''):
expose(u)
expose(v)
'''return ''' pathparent(splay(u))
Первый вызов <tex>expose</tex> построит путь от <tex>u</tex> до корня. Второй пересечет этот путь в наименьшем общем предке, поэтому в splay-дереве, которому принадлежит <tex>u</tex>, хранится указатель <tex>pathparent</tex> на <tex>lca</tex>, после <tex>splay(u)</tex> он будет находиться в <tex>u</tex>.
234
правки

Навигация