diff --git a/Baum/src/Baum.java b/Baum/src/Baum.java index 981992f..4867332 100644 --- a/Baum/src/Baum.java +++ b/Baum/src/Baum.java @@ -1,7 +1,12 @@ +import java.util.LinkedList; +import java.util.Queue; public class Baum { private Knoten wurzel; - + + private Queue ll = new LinkedList(); + private StringBuilder sb; + public void add(int wert) { if (wurzel == null) { wurzel = new Knoten(wert); @@ -14,6 +19,19 @@ public class Baum { public void inorder() { wurzel.inorder(); } + + public String toString() { + // Breitensuche + if (wurzel == null) + return "Baum ist noch leer"; + + sb = new StringBuilder(); + ll.add(wurzel); + + wurzel.breitensuche(); + + return sb.toString(); + } // ---------- @@ -53,6 +71,20 @@ public class Baum { if (this.rechts != null) this.rechts.inorder(); } + + public void breitensuche() { + if (links != null) + ll.add(this.links); + if (rechts != null) + ll.add(this.rechts); + + sb.append(ll.poll().wert + " "); + + if (ll.size() == 0) + return; + + ll.peek().breitensuche(); + } } diff --git a/Baum/src/Main.java b/Baum/src/Main.java index c33701c..fa1557d 100644 --- a/Baum/src/Main.java +++ b/Baum/src/Main.java @@ -10,9 +10,9 @@ public class Main { b1.add(11); - b1.inorder(); + // b1.inorder(); - System.out.println(b1); + System.out.println(b1.toString()); }