var Num:integer;
var Num:integer;
var code:integer):integer;
var i,child:integer;
last_el:element;
stop:boolean;
begin
if Num=0
then
code:=2
else
begin
delete_min:=H[1];
last_el:=H[Num];
Num:=Num-1;
i:=1; stop:=False;
while (2*i<=Num) and (not stop) do
begin
child:=2*i;
if child < Num then
if H[child+1] < H[child]
then child:=child+1;
if last_el > H[child] then
begin
H[i]:=H[child];
i:=child;
end
else
stop:=True;
end; {while}
H[i]:=last_el;
code:=0;
end; {if}
end; {delete_min}
Трудоемкость операции добавления определяется количеством выполнения цикла while и не превышает количества уровней кучи, которое равно Log (Num)
Применение бинарных куч.
Понятно, что такая структура очень полезна. Ее можно использовать для сортировки элементов. Для этого достаточно вначале добавить каждый из них в кучу, а затем поочередно удалить. Трудоемкость сортировки, реализованной таким образом, определяется трудоемкостью операций добавления и удаления
Индекс
Элементарные функции
Линейные уравнения
Нелинейные уравнения
Случайные числа