Изменения

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

Tango-дерево

117 байт убрано, 04:55, 9 июня 2014
Нет описания правки
Изначально сделаем все левые ребра жирными.
 
<font color=green> // Из каждой вершины выходит <= 2 ребер. В общем случае одно жирное, другое нет. </font>
Разобьем наше дерево на жирные пути.
Каждый из этих жирных путей организуем в свое splay-дерево.
Из каждой вершины создадим вспомогательную ссылку на корень ''splay-'' дерева, соответствующего жирному пути, в котором лежит тот ее ребенок, в которой который ведет из нее нежирное ребро.
[[Файл:DariaPicture8.png|400px|
]]
Таким образом, все наши ключи организуют иерархичную структуру -- ''Tango '' дерево.
Каждый жирный путь -- ''splay-'' дерево, и каждое их них указывает на корень дерева, в котором лежит ее второй сын(при этом указатель ставится на само дерево, а не на сына).
//Операций первого становления ребра жирным Глубина ''tango'' дерева <tex>O(log n)</tex> – дают несущественный вклад в асимптотику.
Глубина дерева Время работы (M + число изменений жирных ребер) *<tex>log log n</tex>.
Время работы (M + число изменений жирных ребер) *<texfont color=green> log Операций первого становления ребра жирным -- ''O(log n)'', это дает несущественный вклад в асимптотику. </texfont>
===Поиск===
170
правок

Навигация