Процедура создания бинарного дерева
Для построения дерева необходимо создать в памяти ЭВМ элемент следующего типа:
P, Q - рабочие указатели
V=maketree(key,rec) - процедура, которая создает сегмент ключа и записи
P=getnode - генерация нового элемента
r=rec
k=key
V=P
left=nil
right=nil
tree - указатель на корень дерева
Введем сначала первое значение ключа, потом сгенерируем сам элемент узла дерева процедурой maketree. Далее идем по циклу до тех пор, пока указатель не передвинется на нулевое значение.
READ(key,rec)
tree=maketree(key,rec)
WHILE not eof DO
READ(key,rec)
V=maketree(key,rec)
WHILE P<>nil DO
Q=P
IF key=k(P)
THEN P=left(P)
ELSE P=right(P)
END IF
END WHILE
IF P=nil
THEN WRITELN(' Это корень');
tree=V
ELSE IF key<k(q)
THEN left(P)=V
ELSE right(P)=V
END IF
END IF
END WHILE