Einzelnen Beitrag anzeigen

hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.275 Beiträge
 
Delphi 10.4 Sydney
 
#12

AW: Morsealphabet als Binärbaum programmieren? What?

  Alt 16. Okt 2018, 20:54
Hallo,
hast du dir uBinTree.pas und dessen Klasse/Methoden schon angesehen?

Bsp:
Delphi-Quellcode:
function TBinTree.insertleft(c: char): boolean;
  // Es wird an der Cursorposition ein neues Blatt an den Baum gehängt, wenn
  // der Cursorknoten links einen leeren Teilbaum besitzt. Bei einem leeren Baum
  // wird der Wurzelknoten erzeugt. War das Einfügen erfolgreich, wird das
  // Zeichen "c" als Knoteninhalt gespeichert "true" zurückgegeben - sonst "false".

Ich fange ich mit einem leeren Binärbaum an:

var
  BinTree: TBinTree;
begin
  BinTree:= TBinTree.Create;
  BinTree.Empty; // eigentlich nicht notwendig, weil der Baum ja eh leer ist

  BinTree.insertleft('E');
  // Der "Cursor", also der aktuelle Knoten ist jetzt
  BinTree.insertleft('I');

  so dann erst mal alle ganz linken rein ('S', 'H','5').
  Danach mit Reset wieder auf Root.
  BinTree.Reset;
  auf 'E' springen
  BinTree.Left;
  BinTree.InsertRight('A');
So kannst Du dir schrittweise deinen Baum aufbauen.
Heiko
  Mit Zitat antworten Zitat