Изменения

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

Splay-дерево

153 байта добавлено, 15:34, 23 апреля 2012
Splay-деревья по неявному ключу
==Splay-деревья по неявному ключу==
 Для операции split нам необходимо хранить число вершин в поддереве. Это число может меняться вовремя операции splay, но при этом его легко поддерживать: мы точно знаем, куда переместятся поддеревья. Тогда после операции мы просто пересчитываем число элементов для 2 (zig) или 3 (zigSplay-zig, zig-zag) вершин. Остальные операции аналогичны дерево по неявному ключу полностью аналогично [[Декартово дерево по неявному ключу|декартову дереву по неявному ключу]], неявным ключом также будет количество элементов дерева, меньших данного. Аналогично, будем хранить вспомогательную величину <tex>C(x)</tex> — количество вершин в поддереве. К операциям, которые уже были представлены в декартовом дереве, добавляется splay, но пересчет <tex>C(x)</tex> в ней тривиален, так как мы точно знаем, куда перемещаются изменяемые поддеревья.
==Литература==

Навигация