/ / Schläger: Fügen Sie neue Knoten in einen binären Suchbaum ein - Schema, Binärbaum, Schläger, Schläger-Schüler-Sprachen

Schläger: Fügen Sie neue Knoten in einen binären Suchbaum ein - Schema, Binärbaum, Schläger, Schläger-Schüler-Sprachen

Nehmen wir an, wir haben eine binäre Baumstruktur:

(define-struct tree-node (left right node))

Ich habe Probleme mit dem Erstellen eines binären Suchbaums. Mein Hauptproblem ist, ich weiß nicht, wie man einen Knoten in einen Baum einfügt oder links oder rechts in den Baumstrukturknotenstrukturen überschreibt.
Sagen wir, wir sind auf Baumlänge 8 und ich möchte einen neuen Knoten einfügen, wenn links oder rechts leer ist. Mein Problem hier ist, wie gehe ich so tief? Ist das rekursiv möglich und wenn ja wie mache ich das?

kann nur die Zwischenebene verwenden.

Antworten:

1 für die Antwort № 1

Das Designrezept von Wie man Programme gestaltet beantwortet diese Frage. Abschnitt 19.5 adressiert insbesondere binäre Suchbäume. Das Material, das Ihnen hier am meisten helfen wird, ist wahrscheinlich das in den Abschnitten 8 und 9. Um ein paar Threads für Sie herauszuziehen: Zuerst benötigen Sie eine Datendefinition für einen binären Suchbaum. Dann müssen Sie Testfälle für eine Vielzahl von Fällen schreiben, einschließlich des Basisfalls (Einfügen in einen leeren Knoten). Dann müssen Sie der Vorlage folgen, die Ihrer Datendefinition zugeordnet ist.