Baum erzeugen

regtan

Aktives Mitglied
Hallo, ich versuch ein trinären Baum zu erzeugen und muss die Methode "ThreeNode createThree(int depth)" implementieren. Es gelingt mir bis "CorrectTreeForDepthTwo" aber nicht weiter. Wo könnte das Problem liegen? Das ist mein Code:
Code:
public static ThreeNode createThree(int depth) {


     ThreeNode root = new ThreeNode();
     while (depth != 0) {

     for (int i = 1; i < depth; i++) {
       ThreeNode knoten = new ThreeNode();

         root.setLeft(knoten);
         root.setMiddle(knoten);
         root.setRight(knoten);
       }
       return root;   
     }if(depth == 0) {

       return null;
     }

   return root;
}
 

Meniskusschaden

Top Contributor
Ich weiß nicht, was du damit meinst:
Es gelingt mir bis "CorrectTreeForDepthTwo" aber nicht weiter.
Du solltest vielleicht etwas mehr Code zeigen, denn so ist es nicht kompilierbar, weil mindestens die drei setXXX-Methoden fehlen.

Ausserdem solltest du für dein Programm mal einen Schreibtischtest machen, denn es gibt ziemlich viele Fehler, die du dadurch leicht finden kannst.

Folgende Fehler fallen mir auf:

Die Bedingung der while-Schleife ergibt keinen Sinn, denn depth ändert sich nicht, so dass die Schleife nur durch das return nach der for-Schleife verlassen werden kann.

Deshalb ist derzeit auch die if-Bedingung überflüssig, denn an die Stelle kann man ohnehin nur kommen, wenn depth == 0 ist.

Aus diesem Grund ist auch das nachfolgende return root überflüssig, denn es kann nicht erreicht werden.

Bei jeder Iteration der for-Schleife erzeugst du einen ThreeNode, den du als linken, mittleren und rechten Nachfolger setzt. Sollen die wirklich alle denselben ThreeNode enthalten?

Es bleibt nur der ThreeNode der letzten Schleifeniteration erhalten, denn die vorigen überschreibst du mit setLeft etc. wieder. Zumindest sofern setLeft das tut, was der Name nahe legt.
 

regtan

Aktives Mitglied
Die Methode soll einen vollständig balancierten, trinären Baum erzeugen (also alle Knoten, außer die der untersten Ebene haben alle drei Kindknoten). Der erzeugte Baum soll die in depth übergebene Tiefe haben. Als Rückgabewert wird der Wurzelknoten des neu erzeugten Baums erwartet.
Code:
public class ThreeNode {

   private ThreeNode left;
   private ThreeNode middle;
   private ThreeNode right;

   public ThreeNode left() {
     return left;
   }
   public void setLeft(ThreeNode node) {
     left = node;
   }
   public ThreeNode middle() {
     return middle;
   }
   public void setMiddle(ThreeNode node) {
     middle = node;
   }
   public ThreeNode right() {
     return right;
   }
   public void setRight(ThreeNode node) {
     right = node;
   }

   public static ThreeNode createThree(int depth) {

     ThreeNode root = new ThreeNode();
     if(depth != 0) {

     for (int i = 1; i < depth; i++) {
       ThreeNode knoten = new ThreeNode();

         root.setLeft(knoten);
         root.setMiddle(knoten);
         root.setRight(knoten);
       }
       return root;   
     }else {

       return null;
     }
   }
}
 

Meniskusschaden

Top Contributor
Scheint so, dass du weiterhin nur einen Nachfolger an den Wurzelknoten anhängst, den jedoch gleichzeitig als linken, mittleren und rechten. Das ist bestimmt nicht so gedacht.

Die Nachfolger (bzw. der eine, der es bisher ist) bekommen ihrerseits keine weiteren Nachfolger. Es enstehen also nur zwei Ebenen. Ich würde versuchen, Rekursion zu nutzen, um bequem alle Ebenen zu erzeugen.
 

regtan

Aktives Mitglied
Ich hab so weiter geschrieben aber hab wieder Fehler. Eine praktische Hinweis wäre echt cool :(
Code:
public static ThreeNode createThree(int depth) {
  
     ThreeNode root = new ThreeNode();
     while(depth != 0) {
     for (int i = 1; i < depth ; i++) {
        ThreeNode knoten = new ThreeNode();
  root.setLeft(knoten);
  if (knoten.left() != null) {
     knoten.setLeft(knoten.left());
     knoten.setMiddle(knoten.left());
           knoten.setRight(knoten.left());
         }
  root.setMiddle(knoten);
  if (knoten.middle() != null) {
     knoten.setLeft(knoten.middle());
     knoten.setMiddle(knoten.middle());
           knoten.setRight(knoten.middle());
         }
  root.setRight(knoten);
  if (knoten.right() != null) {
     knoten.setLeft(knoten.right());
     knoten.setMiddle(knoten.right());
           knoten.setRight(knoten.right());
         }
       }
       return root;  
     }
       return null;
   }
 

Meniskusschaden

Top Contributor
Ich würde dir wirklich empfehlen, einen Schreibtischtest zu machen. Also das Programm Schritt für Schritt durchgehen (Schleifen entsprechend mehrmals) und dabei jedes erzeugte Objekt auf ein Blatt Papier malen und die Referenzen darauf ebenfalls als Pfeile einzeichnen. Dann siehst du bald wie die Objekte vernetzt sind.
 

Phtevenz

Mitglied
bei einer rekursiven erzeugung musst du irgendeine variable als terminationskriterium mitgeben, irgendeine dummyvaribale die beim ersten aufruf mit 0 aufgerufen wird z.b.

DreiBlatt rekursivKind(DreiBlatt db, int tiefe, int dummy){
if(dummy>=tiefe)
return null;
else
db.links = rekursivKind(new DreiBlatt(), tiefe, dummy+1);
......
}


mit aufruf "Dreiblatt root = new Dreiblatt(); rekursivKind(root,3,0)";


*ungetestet und nur als grobe vorlage*
 

regtan

Aktives Mitglied
Ich check das nicht. Wie kann diese "DreiBlatt rekursivKind(DreiBlatt db, int tiefe, int dummy)....." in die Methode rein passen. :(
 

JStein52

Top Contributor
Und schon ist es passiert. Ich würde sagen die passt erst mal gar nicht weil du eine iterative Lösung gewählt hast. Versuche mal das nachzuvollziehen was dir @Meniskusschaden vorgeschlagen hat und korrigiere deine aktuellen Fehler bevor du auf neue Lösungen umschwenkst.
 

regtan

Aktives Mitglied
Ich hab es anders geschrieben aber trotzdem ohne Erfolg.
Code:
ThreeNode root = new ThreeNode();
       while(depth != 0) {
       for (int i = 1; i < depth ; i++) {
          ThreeNode knoten = new ThreeNode();
    root.setLeft(knoten);
    root.setMiddle(knoten);
    root.setRight(knoten);
    for (int j = 2; j < (Math.pow(3, i)-1); j++) {
             knoten.setLeft(knoten);
             knoten.setMiddle(knoten);
             knoten.setRight(knoten);
           }
         }
       
         return root;   
       }

         return null;
   }
 

regtan

Aktives Mitglied
Soll diese teil nur einmal gerufen
Code:
root.setLeft(knoten);
    root.setMiddle(knoten);
    root.setRight(knoten);
und dann nur ?
Code:
             knoten.setLeft(knoten);
             knoten.setMiddle(knoten);
             knoten.setRight(knoten);
 

mrBrown

Super-Moderator
Mitarbeiter
bei einer rekursiven erzeugung musst du irgendeine variable als terminationskriterium mitgeben, irgendeine dummyvaribale die beim ersten aufruf mit 0 aufgerufen wird z.b.

*ungetestet und nur als grobe vorlage*

sehr grob ;) Die Variable zum Terminieren ist in dem Fall die Tiefe, und auch die Übergabe eines Knoten kann man sich sparen...

Ich hab es anders geschrieben aber trotzdem ohne Erfolg.
Hast du dich schon mal mit Rekursion beschäftigt? Das dürfte dann hierbei der leichtere Weg sein...

Bei der iterativen Lösung müsste man doch noch ne Liste mitschleppen, oder steh ich da grad aufm Schlauch?
 

JStein52

Top Contributor
Du hängst in deinen diversen Schleifen immer unter den root-Knoten das aktuell erzeugte Knoten-Objekt und zwar als left, middle und right. Und dann setzt du in deinem neuen Knoten diesen selber wieder als left, middle, right. Was willst du denn machen
 

Meniskusschaden

Top Contributor
Ich glaube, du hast dir noch nicht bewusst gemacht, was deine einzelnen Operationen überhaupt bewirken. So lange dir das nicht klar wird, wirst du es nicht hinbekommen. Das Bild im Anhang enthält zwei Graphen. Der obere zeigt das, was du im Moment tust, der untere zeigt (unvollständig) das, was du vermutlich möchtest.
 

Anhänge

  • ThreeNode.png
    ThreeNode.png
    23 KB · Aufrufe: 70

regtan

Aktives Mitglied
Ja genau so sollte es aussehen und ich hab manche Codefehler gefunden( glaub ich mindesten) aber trotzdem hab ich bis zweite knote geschafft.
 

regtan

Aktives Mitglied
Ich hab jetzt anders versucht:
Code:
public static ThreeNode createThree(int depth) {

     if (depth == 0)
       return null;
     
     Stack <ThreeNode> three = new Stack <ThreeNode>();
     ThreeNode root = new ThreeNode();
     three.push(root);
     
     while(!three.empty()){
     ThreeNode Node = (ThreeNode)three.pop();
     
       if (Node.left != null) {
         three.push(Node.left);
         if (Node.middle != null) {
           three.push(Node.middle);
           if (Node.right != null) {
             three.push(Node.right);
           }
         }
       }

     }
     return root;
   }
trotzdem krieg ich Fehler :(
 

mrBrown

Super-Moderator
Mitarbeiter
Du erzeugst nur den Root-Node, von dem sind immer alle Kinder erstmal null, also wird auch nichts anderes als der gepusht, sodass de direkt zurückgegeben wird.

Außerdem beachtest du die Tiefe (außer beim ==0) nicht
 

regtan

Aktives Mitglied
Könntest du mir bitte sehr konkret zeigen was ich im Code ändern soll? Weil ich verstehe nicht warum wird nur root zurückgegeben.
 

mrBrown

Super-Moderator
Mitarbeiter
Auf deinen Stack push du root, dann nimmst du das erste runter (in dem Fall Root), prüfst dann, ob davon das linke Element != null ist, das ist es aber nie, da es nirgendwo gesetzt wird.
Die Schleife fängt dann wieder von vorn an, der Stack ist aber schon leer, also endet die Schleife direkt, und es wird root zurückgegeben.


Um nochmal die Frage von vorhin zurückzukommen, kennst du Rekursion?
 

mrBrown

Super-Moderator
Mitarbeiter
Dann geh das Problem mal von einer anderen Seite an:

Du sollst einen Baum der Tiefe n erzeugen, das ist das gleiche, wie ein Knoten, mit Bäumen der Tiefe (n-1) als Kinder, und diese sind wieder Knoten, mit Bäumen der Tiefe ((n-1)-1) als Kinder ;)
 

regtan

Aktives Mitglied
Ich hab den Code Tausend mal umgeschrieben und immer noch hab nicht den richtigen hin gekriegt :( Ich wäre sehr dankbar wenn jemand mein Code so umschreibt wo die Fehler sind. Vielen Dank im Voraus!
Code:
ThreeNode root = new ThreeNode();
     while(depth != 0) {

       ThreeNode Node = new ThreeNode();
       root.setLeft(Node.left);
       root.setMiddle(Node.middle);
       root.setRight(Node.right);

       for (int j = 1; j <= depth; j++) {

         if (Node.left != null) {
           Node.setLeft(Node.left);
           Node.setMiddle(Node.middle);
           Node.setRight(Node.right);
           if (Node.middle != null) {
             Node.setLeft(Node.left);
             Node.setMiddle(Node.middle);
             Node.setRight(Node.right);
             if (Node.right != null) {
               Node.setLeft(Node.left);
               Node.setMiddle(Node.middle);
               Node.setRight(Node.right);
             }
           }
         }

       }
       return root;   
     }
     return null;
   }
 

Meniskusschaden

Top Contributor
Ich hab den Code Tausend mal umgeschrieben und immer noch hab nicht den richtigen hin gekriegt
Durch herum probieren wirst du es auch nicht hinbekommen. Es ist schwer, dir zu helfen, denn dein Problem ist nicht, dass du die Lösung nicht findest. Das wäre nicht weiter schlimm, denn man könnte einfache Hinweise dazu geben.
Das Problem ist, dass dir offenbar überhaupt nicht klar ist, was deine einzelnen Anweisungen überhaupt bewirken. Anstatt weiter nach einer Lösung zu suchen, müsstest du zuerst daran arbeiten, zu verstehen, was dein Programm macht. Meines Erachtens hilft da nur ein Schreibtischtest, also das Programm schrittweise Zeile für Zeile durchzugehen und auf Papier aufzuzeichnen, was in der jeweiligen Zeile passiert. Aber das habe ich oben bereits zweimal vorgeschlagen.

Ein paar Zeilen in deinem Code habe ich hier noch mal kommentiert:
Java:
    ThreeNode root = new ThreeNode();    // Hier erzeugst du den Wurzelknoten.
    while(depth != 0) {                

      ThreeNode Node = new ThreeNode();  // Hier erzeugst du einen weiteren Knoten.
      root.setLeft(Node.left);           // Hier hängst du den linken Unterknoten des neuen Knotens als linken
                                         // Unterknoten des Wurzelknotens ein. Da der neue Knoten jedoch keinen
                                         // linken Unterknoten hat, hat auch der Wurzelknoten keinen linken
                                         // Unterknoten.
      root.setMiddle(Node.middle);
      root.setRight(Node.right);

      for (int j = 1; j <= depth; j++) {

        if (Node.left != null) {         // Hier prüfst du, ob der Knoten einen linken Unterknoten hat
          Node.setLeft(Node.left);       // Falls ja, ersetzt du ihn durch sich selbst
          Node.setMiddle(Node.middle);
...
 

regtan

Aktives Mitglied
Wenn ich richtig verstanden habe dann sollte ich so einfach eine linke Knote an root hangen?
Code:
root.setLeft(Node);
und
Code:
if (Node.left != null) {       
     Node.setLeft(Node);  //hier wird eine neue Knote erzeugt werden falls keine links gibt, richtig so oder??
 

JStein52

Top Contributor
Jetzt versuchst du es mal so:

Code:
    public static void generateTree(int depth) {

        ThreeNode root = new ThreeNode();

        LinkedList<ThreeNode> listOfNodes = new LinkedList<ThreeNode>();
        listOfNodes.add(root);

        for (int i = 1; i <= depth; i++) {

            LinkedList<ThreeNode> tempList = (LinkedList<ThreeNode>) listOfNodes.clone();

            for (ThreeNode node : tempList) {

                // delete root element from list
                listOfNodes.remove(node);

                // create left/right
                ThreeNode left = new ThreeNode();
                ThreeNode right = new ThreeNode();
                ThreeNode middle = new ThreeNode();

                // set left/right to root node
                node.setLeft(left);
                node.setRight(right);
                node.setMiddle(middle);

                // add left/right to list
                listOfNodes.add(left);
                listOfNodes.add(right);
                listOfNodes.add(middle);
            }
        }
    }

Edit:
In der temporären Liste tempList werden sich die Knoten einer Ebene gemerkt damit man sie im nächsten Durchgang alle bearbeiten kann. Das brauchst du bei einer iterativen Lösung (hat dir @mrBrown oben schon mal gesagt.
 

regtan

Aktives Mitglied
Sollte die for - schleife mit der math.pow genau die knoten in den Baum hängen???
Code:
while(depth != 0) {

       ThreeNode root = new ThreeNode();

       LinkedList<ThreeNode> listOfNodes = new LinkedList<ThreeNode>();
       listOfNodes.add(root);

       LinkedList<ThreeNode> tempList = new LinkedList<ThreeNode>(listOfNodes);

       for (ThreeNode node : tempList) {

         for (int i = 1; i < depth; i++) {

           ThreeNode left = new ThreeNode();
           ThreeNode right = new ThreeNode();
           ThreeNode middle = new ThreeNode();

           node.setLeft(left);
           node.setRight(right);
           node.setMiddle(middle);

           for (int j = 0; j < Math.pow(3, i); j++) { // ich meine diese schleife hier

             listOfNodes.add(left);
             listOfNodes.add(right);
             listOfNodes.add(middle);
           }
         }
       }
       return root;   
     }
     return null;
   }
 

regtan

Aktives Mitglied
Das ist der ganze Code
Code:
public class ThreeNode {

   private ThreeNode left;
   private ThreeNode middle;
   private ThreeNode right;

   public ThreeNode left() {
     return left;
   }

   public void setLeft(ThreeNode node) {
     left = node;
   }

   public ThreeNode middle() {
     return middle;
   }

   public void setMiddle(ThreeNode node) {
     middle = node;
   }

   public ThreeNode right() {
     return right;
   }

   public void setRight(ThreeNode node) {
     right = node;
   }


   public static ThreeNode createThree(int depth) {

     while(depth != 0) {

       ThreeNode root = new ThreeNode();

    LinkedList<ThreeNode> listOfNodes = new LinkedList<ThreeNode>();
    listOfNodes.add(root);

    for (int i = 1; i <= depth; i++) {

       LinkedList<ThreeNode> tempList = new LinkedList<ThreeNode>(listOfNodes);

    for (ThreeNode node : tempList) {

    // delete root element from list
    listOfNodes.remove(node);

    // create left/right
    ThreeNode left = new ThreeNode();
    ThreeNode right = new ThreeNode();
    ThreeNode middle = new ThreeNode();

    // set left/right to root node
    node.setLeft(left);
    node.setRight(right);
    node.setMiddle(middle);

    // add left/right to list
    listOfNodes.add(left);
    listOfNodes.add(right);
    listOfNodes.add(middle);
    }
    }
       return root;   
     }
     return null;
   }
}
 

regtan

Aktives Mitglied
Aber hab genau dein Code genommen und trotzdem funktioniert leider nicht. Erstens gibt nichts Zurück auch wenn depth null ist. Dann des
Code:
LinkedList<ThreeNode> tempList = (LinkedList<ThreeNode>) listOfNodes.clone();
wird auch ein bug erzeugen
 

JStein52

Top Contributor
Ja, ich dachte du benutzt diese Zeile:

Code:
LinkedList<ThreeNode> tempList = new LinkedList<>(listOfNodes);

Und ein return root; darfst du am Ende ja einbauen. ;);) Aber lass endlich mal diese whiel depth != 0) -Schleife weg. Was soll die. Und was funktioniert dann am Rest nicht ?
 

regtan

Aktives Mitglied
ich hab das so umgeschrieben:
Code:
public static ThreeNode createThree(int depth) {
     
     if (depth == 0) {
       return null;
     }

     ThreeNode root = new ThreeNode();

  LinkedList<ThreeNode> listOfNodes = new LinkedList<ThreeNode>();
  listOfNodes.add(root);

  for (int i = 1; i <= depth; i++) {

   
     LinkedList<ThreeNode> tempList = new LinkedList<ThreeNode>(listOfNodes);

  for (ThreeNode node : tempList) {

  // delete root element from list
  listOfNodes.remove(node);

  // create left/right
  ThreeNode left = new ThreeNode();
  ThreeNode right = new ThreeNode();
  ThreeNode middle = new ThreeNode();

  // set left/right to root node
  node.setLeft(left);
  node.setRight(right);
  node.setMiddle(middle);

  // add left/right to list
  listOfNodes.add(left);
  listOfNodes.add(right);
  listOfNodes.add(middle);
  }
  }
  return root;
}
Funktioniert aber nicht:

Test nicht bestanden

  • returnsNullForDepthZero //nur das ist ok
  • returnsCorrectTreeForDepthTen

    Expected: is null
    got: <ThreeNode@440231a5>

  • returnsCorrectTreeForDepthFour

    Expected: is null
    got: <ThreeNode@6a0c9792>

  • returnsCorrectTreeForDepthTwo

    Expected: is null
    got: <ThreeNode@4254f9bd>

  • returnsSingleNodeForDepthOne

    Expected: is null
    got: <ThreeNode@100386b8>
 

mrBrown

Super-Moderator
Mitarbeiter
Wenn die Ausgabe der Tests zumindest sinnvoll ist, erwartet der bei egal welcher Tiefe null als Rückgabewert, was alles andere als richtig wäre...

Versuch ansonsten mal das:
Java:
public static ThreeNode createThree(int depth) {
        if (depth <= 0) {
            return null;
        }
     
        ThreeNode node = new ThreeNode();
        node.left = createThree(depth-1);
        node.middle = createThree(depth-1);
        node.right = createThree(depth-1);
     
        return node;
    }
 

JStein52

Top Contributor
Und ich denke die Interpretation der Tiefe war bei der iterativen Lösung falsch. Das muss einfach alles nur eine Ebene hoch. Aber jetzt egal.
 

mrBrown

Super-Moderator
Mitarbeiter
Ja, merkwürdiger Test. Bei mir war alles richtig. Undjetzt haben wir 3 Tage versucht eine iterative Lösung zu finden, plötzlich mag er es doch rekursiv. Da hätten wir uns viel Mühe sparen können ;);)

Ich versuch seit 3 Tagen, ihn zur rekursiven Lösung zu bewegen :p

Und ich denke die Interpretation der Tiefe war bei der iterativen Lösung falsch. Das muss einfach alles nur eine Ebene hoch. Aber jetzt egal.

Wenn ichs richtig sehe, müsset nur die Schleifenbedingung von <= zu < geändert werden


Aber egal von wem die Tests kommen, er sollte denjenigen drauf hinweisen, das die Ausgabe Mist ist.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
D spezifische Knoten in einem Baum zählen Java Basics - Anfänger-Themen 9
HelpInneed Baum ausgeben (aber mal anders) Java Basics - Anfänger-Themen 3
G AVL-Baum Java Basics - Anfänger-Themen 1
G Rot-Schwarz-Baum Java Basics - Anfänger-Themen 8
L Baum aus Integer Liste erstellen Java Basics - Anfänger-Themen 0
CptK Interface Baum visualisieren Java Basics - Anfänger-Themen 37
CptK Best Practice Merge-Sort als Baum darstellen Java Basics - Anfänger-Themen 3
E Baum pfadweise durchlaufen Java Basics - Anfänger-Themen 11
O Naives links rechts einfügen in ADT Baum Java Basics - Anfänger-Themen 8
L Traversierungsverfahren Baum: LevelOrder Java Basics - Anfänger-Themen 17
L Rekursion im Baum Java Basics - Anfänger-Themen 9
L Baum Knoten zählen Java Basics - Anfänger-Themen 6
L B+Baum innere Knoten erstellen Java Basics - Anfänger-Themen 3
D B-Baum einfügen und löschen Java Basics - Anfänger-Themen 2
F Aufgabe Rekursion Binärer Baum Java Basics - Anfänger-Themen 15
D Werte AVL-Baum löschen Java Basics - Anfänger-Themen 2
M Binären Baum Kinder setzen Java Basics - Anfänger-Themen 12
U 2-3-4 Baum Top-Down Java Basics - Anfänger-Themen 4
U 2-3-4 Baum Top-Down Java Basics - Anfänger-Themen 0
J Überprüfen, ob eine 2D Matrix ein Baum ist Java Basics - Anfänger-Themen 5
B Baum Traversierung Postorder Java Basics - Anfänger-Themen 6
B OOP Über einen AVL-Baum iterieren (NullPointer) Java Basics - Anfänger-Themen 5
A Voller Baum Java Basics - Anfänger-Themen 7
S n-ärer Baum Java Basics - Anfänger-Themen 6
O Unterschied Baum <-> Automat Java Basics - Anfänger-Themen 2
K Tiefen- und Breitensuche beim Baum durch Stack und Warteschlange Java Basics - Anfänger-Themen 1
C kompletter baum Java Basics - Anfänger-Themen 2
M Collections Iterator und generischer Baum Java Basics - Anfänger-Themen 0
M Baum Code kurze frage ... Java Basics - Anfänger-Themen 6
D Ein Objekt in einem Baum finden und ausgeben. Java Basics - Anfänger-Themen 4
K Rot-Schwarz-Baum min und max-Tiefe Java Basics - Anfänger-Themen 1
A min() Methode Baum Java Basics - Anfänger-Themen 1
J Baum rekursiv durchlaufen Java Basics - Anfänger-Themen 2
J Baum Knoten löschen Java Basics - Anfänger-Themen 10
T Baum mit Turtle zeichnen Java Basics - Anfänger-Themen 2
Screen 2,4 Baum Frage Java Basics - Anfänger-Themen 6
T Rot-schwarz Baum Problem Java Basics - Anfänger-Themen 3
A Rekursion in Baum und ArrayList als Rückgabe Java Basics - Anfänger-Themen 2
P Pythagoras Baum - Berechnung der Punkte Java Basics - Anfänger-Themen 9
C 2-3 Baum Java Basics - Anfänger-Themen 6
H Baum Java Basics - Anfänger-Themen 4
L Rot Scharz Baum von Binärbaum erben Java Basics - Anfänger-Themen 9
B Baum > Baum-Swing Java Basics - Anfänger-Themen 4
L eigenen Baum schreiben Java Basics - Anfänger-Themen 5
Luk10 Anzahl der Knoten in einem Baum ausgeben! Java Basics - Anfänger-Themen 6
T Array in einen Baum zu überführen Java Basics - Anfänger-Themen 3
S Das reinschreiben einer Klasse in den Baum Java Basics - Anfänger-Themen 6
H B-Baum: Knoten Position als Parameter oder als Variable im Objekt? Java Basics - Anfänger-Themen 4
A Baum mit geometricfigur Werte Java Basics - Anfänger-Themen 6
D Datentypen Einfügen im RotSchwarz Baum Java Basics - Anfänger-Themen 2
F FileSystem in Baum darstellen/wurzel festlegen Java Basics - Anfänger-Themen 3
G List als Rückgabewert einer rekursiven Methode (Baum) Java Basics - Anfänger-Themen 3
I Baum graphisch darstellen Java Basics - Anfänger-Themen 2
P Binärer Baum mit Composite-Entwurfsmuster Java Basics - Anfänger-Themen 2
L Baum Swing AVL Java Basics - Anfänger-Themen 4
Binary.Coder 2-3-4 Baum vs. (2,4) Baum Java Basics - Anfänger-Themen 2
ModellbahnerTT Ab-Baum Applet Java Basics - Anfänger-Themen 3
P Baum-Menü in Java Java Basics - Anfänger-Themen 5
H Baum Java Basics - Anfänger-Themen 11
G AVL Baum Java Basics - Anfänger-Themen 20
J Baum spiegeln Java Basics - Anfänger-Themen 7
N 2-3 Baum, Einfügen Java Basics - Anfänger-Themen 5
G Rekursion mit Return - Baum durchlaufen Java Basics - Anfänger-Themen 4
G Baum Datenstruktur Java Basics - Anfänger-Themen 2
V Baum mit log n Aufwand für Einfügen und Löschen und. Java Basics - Anfänger-Themen 5
H Tiefensuche im binären Baum Java Basics - Anfänger-Themen 2
P Problem mit Darstellung im Baum Java Basics - Anfänger-Themen 4
G Binärer Baum Java Basics - Anfänger-Themen 3
M Binärer Baum Tiefe Java Basics - Anfänger-Themen 14
G universeller baum Java Basics - Anfänger-Themen 13
G Baum testen Java Basics - Anfänger-Themen 20
B Array To Baum Java Basics - Anfänger-Themen 2
B Baum to Array Java Basics - Anfänger-Themen 17
H Löschen in einem binären Baum führt zu einem StackOverflow Java Basics - Anfänger-Themen 2
L Binären Baum speichern Java Basics - Anfänger-Themen 6
R Pythagoras-Baum Java Basics - Anfänger-Themen 5
W Baum durchlaufen Java Basics - Anfänger-Themen 3
T binärer Baum Java Basics - Anfänger-Themen 3
G eine Knoten aus einem Baum löschen. [SOLVED] Java Basics - Anfänger-Themen 7
P allg. Baum aus Liste Java Basics - Anfänger-Themen 2
J String in binären Baum umwandeln Java Basics - Anfänger-Themen 7
R binärer Baum Java Basics - Anfänger-Themen 2
F Abstrakte Klasse Baum Java Basics - Anfänger-Themen 6
W Javadoc HTML erzeugen mit allen dependency Java Basics - Anfänger-Themen 11
J Delay erzeugen, ohne Programm zu blockieren Java Basics - Anfänger-Themen 7
Say abstract class und Objekt erzeugen - Dringend Hilfe Java Basics - Anfänger-Themen 10
BeginnerJava String mit vorgegebener Länge und Buchstaben erzeugen/ mit Leerstellen Java Basics - Anfänger-Themen 8
frager2345 Singleton-Muster Java ->Nur eine Instanz einer Klasse erzeugen können Java Basics - Anfänger-Themen 45
H Artefact mit Bild erzeugen Java Basics - Anfänger-Themen 11
E Rekursiv Objekte erzeugen - geht das? Java Basics - Anfänger-Themen 2
F Aus eingelesener Datei korrekt Objekte erzeugen Java Basics - Anfänger-Themen 5
D Hilfe beim Erzeugen eines Arrays NullPointerException wird ausgelöst Java Basics - Anfänger-Themen 11
C Runnable Jar-File erzeugen Java Basics - Anfänger-Themen 14
W Mehrfach das gleiche Attribut für ein Objekt erzeugen (mit verschiedenen Werten) Java Basics - Anfänger-Themen 2
Lena_2611 Vergleich von Array1 Index mit Array2 Wert und erzeugen eines neues Arrays Java Basics - Anfänger-Themen 8
C Instanzen, wann muss ich Instanzen erzeugen & wo?) Java Basics - Anfänger-Themen 23
S Erzeugen einer eindeutigen ID Java Basics - Anfänger-Themen 2
E Objekt durch Benutzer über Konsole erzeugen - Java Java Basics - Anfänger-Themen 3
L Simples Spielfeld erzeugen Java Basics - Anfänger-Themen 1
G Anklickbaren Text erzeugen Java Basics - Anfänger-Themen 2

Ähnliche Java Themen

Neue Themen


Oben