- Insert(H, x)

Insert(H,x)

H' = x

H = Union(H, H')

Running time = O(lg n)

- Extract-Min(H)

Extract-Min(H)

Find root x with minimum key in H
; O(lg n)

Remove x from H
;

H' = children of x in reverse order
; O(lg n)

; because children are *B*_{k-1}, *B*_{k-2}, ..., *B*_{0}

Union(H, H')
; O(lg n)

Running time = O(lg n)