Изменения

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

Декартово дерево

482 байта убрано, 00:34, 23 января 2016
split
[[file:split.png|thumb|400px|Операция split]]
Операция <tex>\mathrm{split}</tex> (''разрезать'') позволяет сделать следующее: , разрезать декартово исходное дерево <tex>T</tex> по ключу <tex>k</tex> и получить два других декартовых дерева: <tex>T_1</tex> и <tex>T_2</tex>, причем в <tex>T_1</tex>находятся все ключи дерева <tex>T</tex>, не большие <tex>k</tex>, а в <tex>T_2</tex> {{---}} большие <tex>k</tex>. Эта операция будет принимать исходное дерево <tex>T</tex> и ключ <tex>k</tex>, по которому нужно его разделить. Возвращать она будет такую пару деревьев <tex>\langle T_1, T_2\rangle </tex>, что в дереве <tex>T_1</tex> ключи меньше <tex>k</tex>, а в дереве <tex>T_2</tex> все остальные: <tex>\mathrm{split}(T, k) \to \langle T_1, T_2\rangle </tex>.
Эта операция устроена следующим образом.
172
правки

Навигация