Изменения

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

Двоичная куча

1 байт добавлено, 23:25, 15 июня 2014
Восстановление свойств кучи
<code>
'''function''' siftDown(i : '''int'''):
'''while''' 2 * i + 2 1 <= A.heapSize <font color = "green">// <tex>heapSize</tex> {{---}} количество элементов в куче</font> '''if''' 2 * i + 1 2 <= A.heapSize left right = A[2 * i + 12] <font color = "green">// левый правый сын</font>
'''else'''
left right = inf right left = A[2 * i + 21] <font color = "green">// правый левый сын</font>
'''if''' right <= left '''and''' right < A[i]
swap(A[2 * i + 2], A[i])
333
правки

Навигация