Misafirler için gizlenen link, görmek için
Giriş yap veya üye ol.
Misafirler için gizlenen link, görmek için
Giriş yap veya üye ol.
Meraklıları için kod ;
*type
*Node * *= ^TNode;
*TNode * = record
*eleman *: Integer;
*Sol,Sag : Node;
*end;
{
* * * * * 50
* * * */ * * \
* * * 30 * * *70
* * */ *\ * */ *\
* *20 * 40 *60 * 80
}
var
*Form1: TForm1;
implementation
{$R *.dfm}
function NewNode(AEleman:Integer):Node;
begin
*New(Result);
*Result^.eleman := AEleman;
*Result^.Sol * *:= nil;
*Result^.Sag * *:= nil;
end;
function InsertNode(ANode:Node;AEleman:Integer):Node;
begin
*if ANode = nil then
* *Result := NewNode(AEleman)
*else
*begin
* *if AEleman ARoot^.eleman then
* * *Result := Search(ARoot^.Sag,Aranan)
* *else
* * *Result := ARoot;
*end;
end;
procedure TForm1.BtnListeleClick(Sender: TObject);
begin
*Var Root : Node;
*Root := nil;
*Root := InsertNode(Root,50);
*InsertNode(Root, 30);
*InsertNode(Root, 20);
*InsertNode(Root, 40);
*InsertNode(Root, 70);
*InsertNode(Root, 60);
*InsertNode(Root, 80);
*MemNodeInOrder.Lines.Add('In Order');
*InOrderList(Root,MemNodeInOrder);
*MemNodePreOrder.Lines.Add('Pre Order');
*PreOrderList(Root,MemNodePreOrder);
*MemNodePostOrder.Lines.Add('Post Order');
*PostOrderList(Root,MemNodePostOrder);
*edtEnKucuk.Text := 'En Küçük ' + IntToStr(En_Kucuk(Root).eleman);
*edtEnBuyuk.Text := 'En Büyük ' + IntToStr(En_Buyuk(Root).eleman);
*Var Temp : Node;
*Temp := Search(Root,20);
*if Temp nil then
* *edtSearch.Text := 'Bulunan ' + Temp^.eleman.ToString
*else
* *edtSearch.Text := 'Bulunamadı!';
end;
end.