Теми рефератів
> Реферати > Курсові роботи > Звіти з практики > Курсові проекти > Питання та відповіді > Ессе > Доклади > Учбові матеріали > Контрольні роботи > Методички > Лекції > Твори > Підручники > Статті Контакти
Реферати, твори, дипломи, практика » Курсовые проекты » Структури даних: бінарне впорядковане незбалансоване дерево

Реферат Структури даних: бінарне впорядковане незбалансоване дерево





WriteLn ('Такого елемента в дереві немає');

end;


begin

Delete (Root, Key);

end;

// --------------------------------------------- ----------------

procedure TTree.View;


procedure PrintTree (R: PItem; L: Byte);

var i: Byte;

begin

if R <> nil then begin

PrintTree (R ^. Right, L + 3);

for i: = 1 to L do

Write ('');

WriteLn (R ^. Key);

PrintTree (R ^. Left, L + 3);

end;

end;


begin

PrintTree (Root, 1);

end;

// --------------------------------------------- ----------------

procedure TTree.Exist (Key: TInfo);


procedure Search (var P: PItem; X: TInfo);

begin

if P = nil then begin

WriteLn ('Такого елемента немає ');

end else

if X> P ^. Key then// шукається в правому поддереве

Search (P ^. Right, X)

else

if X

Search (P ^. Left, X)

else

WriteLn ('Є такий елемент ');

end;


begin

Search (Root, Key);

end;

// --------------------------------------------- ----------------

destructor TTree.Destroy;


procedure Node_Dispose (P: PItem);

// Видалення вузла і всіх його нащадків у дереві

begin

if P <> nil then begin

if P ^. Left <> nil then

Node_Dispose (P ^. Left);

if P ^. Right <> nil then

Node_Dispose (P ^. Right);

Dispose (P);

end;

end;


begin

Node_Dispose (Root);

end;

// --------------------------------------------- ----------------

procedure InputKey (S: String; var Key: TInfo);

begin

WriteLn (S);

ReadLn (Key);

end;


var

Tree: TTree;

N: Byte;

Key: TInfo;

begin

Tree: = TTree.Create;

repeat

WriteLn ('1-Додати елемент в дерево ');

WriteLn ('2-Видалити елемент ');

WriteLn ('3-Вивести вузли дерева ');

WriteLn ('4-Перевірити існування вузла ');

WriteLn ('5-Вихід ');

ReadLn (n);

with Tree do begin

case N of

1: begin

InputKey ('Введіть значення додається елемента', Key);

Add (Key);

end;

2: begin

InputKey ('Введіть значення видаляється елемента', Key);

Del (Key);

end;

3: View;

4: begin

InputKey ('Введіть елемент, існування якого ви хочете перевірити ', Key);

Exist (Key);

end;

end;

end;

until N = 5;

Tree.Destroy;

end.


# include



Назад | сторінка 4 з 7 | Наступна сторінка





Схожі реферати:

  • Реферат на тему: Creation of control system by a personnel how to begin with a zero
  • Реферат на тему: Procedure of preparation business-plan
  • Реферат на тему: Поняття обвинуваченого і значення залучення в якості такого
  • Реферат на тему: Використання системи Search для ведення архіву технічної документації
  • Реферат на тему: Бінарне дерево