Изменения

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

Биномиальная куча

155 байт добавлено, 20:36, 11 марта 2012
extractMin
min = <tex>\infty</tex>;
x = null;
xBefore = null;
 
curx = H.head;
curxBefore = null;
while curx != null {
// релаксируем текущий минимум
if curx.key < min {
min = curx.key;
x = curx; xBefore = curxBefore;
}
curxBefore = curx; curx = curx.nextsibling;
}
//удаление найденного корня x из списка корней деревьев кучи
xif (xBefore == null) { H.prev.next head = x.nextsibling; x.next} else { xBefore.prev sibling = x.prevsibling; } 
//построение кучи детей вершины x, при этом изменяем предка соответствующего ребенка на null:
H' = null;
333
правки

Навигация