Изменения

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

Куча Бродала-Окасаки

358 байт добавлено, 19:29, 4 сентября 2022
м
rollbackEdits.php mass rollback
== Операции ==
=== Merge ===
Слияние выполняется выбором минимума из двух значений <tex>T_{min}</tex> . Этот элемент и добавлением станет вершиной кучи. Это позволит в приоритетную очередь второго любой момент за константное время показать его при необходимости. Другой, больший элемент, будет вставлен в структуру кучи при помощи операции <texmath> BPQ \mathrm{insert}</texmath>.
<code>
'''BPQ''' merge('''<'''x:'''int''', q:'''PQ>''', '''<'''y:'''int''', r:'''PQ>'''):
'''return''' merge(<x, q>, singleton(y))
</code>
Создание новой одиночной вершины и По сути операция <math>\mathrm{insert}</math> - тот же самый <math>\mathrm{merge}</math> выполняются : создается дерево нулевого ранга за <tex>O(1)</tex>, тогда <math>\mathrm{insert}</math> работает а затем оно сливается с основным также за <tex>O(1)</tex>.
=== getMin ===
1632
правки

Навигация