Rekursives Einfügen von Werten implementiert.

main
Oliver Hummel 2022-12-20 13:27:50 +01:00
parent f60c7cb552
commit 025c407c76
2 changed files with 14 additions and 3 deletions

View File

@ -18,12 +18,21 @@ public class Baum {
public Knoten(int wert) { public Knoten(int wert) {
this.wert = wert; this.wert = wert;
} }
public void add(int neuerWert) { public void add(int neuerWert) {
if (this.wert == neuerWert)
throw new RuntimeException("Doppelte Werte nicht erlaubt.");
if (neuerWert < this.wert) if (neuerWert < this.wert)
links = new Knoten(neuerWert); if (this.links == null)
links = new Knoten(neuerWert);
else
links.add(neuerWert);
else if (neuerWert > this.wert) else if (neuerWert > this.wert)
rechts = new Knoten(neuerWert); if (this.rechts == null)
rechts = new Knoten(neuerWert);
else
rechts.add(neuerWert);
} }
} }

View File

@ -8,6 +8,8 @@ public class Main {
b1.add(21); b1.add(21);
b1.add(84); b1.add(84);
b1.add(11);
System.out.println(b1); System.out.println(b1);
} }