Hilfe bei einer rekursiven Methode

B

beta20

Top Contributor
Hallo,

ich möchte gerne eine rekursive Methode erstellen.
Das Ziel ist es von einem "Element" alle Kinder zu bekommen. Also sprich alle Elemente, die miteinander verknüpft sind.
Hierzu habe ich eine Liste von den Connections von einem Diagrammodell. Nun gehe ich diese Connections durch und suche die Verbindung.

Das heißt, dass ich mit einem "Element" in the Methode starte, und dann immer wieder darüber iteriere, bis es keine Kinder mehr gibt...
Allerdings scheint, dass der Methodenaufruf noch nicht so ganz passt. Ebenfalls muss irgendwie noch ein Check sein, wenn es kein Kind mehr gibt, weil sonst gebe ich ja wieder eine leere Liste zurück?

Java:
    /**
     * Findet alle ChildElement von einem Element / alle Connections
     *
     */
    public List<Element> findAllChildFromElement(DefaultDiagramModel diagramModel, Element startElement) {

        LOGGER.info("START findAllChildFromElement");

        List<Element> elementList = new ArrayList<Element>();

        for (EndPoint endPoint : startElement.getEndPoints()) {

            // Alle Connections durchgehen, und prüfen, wer diesen Endpoint verwenden als Target
            for (Connection connection : diagramModel.getConnections()) {
                               
                if (connection.getSource().equals(endPoint)) {
                    Element e = findElementByEndpoint(diagramModel, connection.getTarget());
                    elementList.add(e);
                   
                    // Methode nochmals aufrufen
                    elementList = findAllChildFromElement(diagramModel, e);
                }
            }
        }

        LOGGER.info("END findAllChildFromElement");
        return elementList;
    }

Ich verwende diese Klassen:

Kann mir hier jemand helfen?
 
MoxxiManagarm

MoxxiManagarm

Top Contributor
Also wenn ich dich richtig verstehe, dann willst du alle zusammenhängende Elemente in der Liste haben. Das ist vergleichbar mit einem Graphen. Belese dich gerne etwas in Graphentheorie. Aus meiner Sicht fehlt dir die Abfrage, welchen Knoten - also welches Element - du bereits besucht hast. Nur wenn du e noch nicht besucht hast fügst (d.h. e existiert nicht in elementList) fügst du e zu elementList hinzu und untersuchst e.

Außerdem hast du mehrere rekursive Aufrufe (durch die Schleife), welche du aber nicht verknüpfst. elementList = findAllChildFromElement(diagramModel, e); sollte vermutlich keine Zuweisung sein, sondern ein addAll
 
Zuletzt bearbeitet:
B

beta20

Top Contributor
Hier mal ein Beispiel:
Element "startElement" (im Methodenkopf) ist das rote Element:
Was ich nun möchte ist, dass ich alle grünen Elementen bekommen

 
Ähnliche Java Themen
  Titel Forum Antworten Datum
S Hilfe bei Fehlerfindung einer rekursiven Methode Java Basics - Anfänger-Themen 2
JD_1998 Random Array sortieren mit Hilfe einer Methode Java Basics - Anfänger-Themen 4
J Brauche Hilfe bei einer aufgabe Java Basics - Anfänger-Themen 1
B BITTE!! Ich brauche dringende Hilfe bei einer Aufgabe Java Basics - Anfänger-Themen 17
Y Konkrete Hilfe gesucht - Anzahl der Stellen einer eingegebenen Zahl überprüfen Java Basics - Anfänger-Themen 5
U Brauche Hilfe bei Programmierung einer Produktdatenbank App Java Basics - Anfänger-Themen 4
E Erste Schritte brauche hilfe zum verstehen einer Klasse(Tiefensuche) Java Basics - Anfänger-Themen 17
A Vererbung Hilfe bei einer Aufgabenstellung Java Basics - Anfänger-Themen 3
G Hilfe bei einer NPE Java Basics - Anfänger-Themen 9
P Hilfe zu einer Aufgabe Java Basics - Anfänger-Themen 9
C Erste Schritte Benötige Hilfe mit einer Stoppuhr Java Basics - Anfänger-Themen 20
S Klassen Brauche Hilfe bei Erstellung einer Klasse für einen Tachenrechner!!! Java Basics - Anfänger-Themen 6
Q Vererbung Kleine Hilfe bei einer aufgabe Java Basics - Anfänger-Themen 5
B OOP Objekte erzeugen mit Hilfe einer for Schleife Java Basics - Anfänger-Themen 29
J HILFE Benutzen einer Klasse aus JRE System Library Java Basics - Anfänger-Themen 4
E Hilfe bei einer Methode Java Basics - Anfänger-Themen 4
H Hilfe bei einer add.methode Java Basics - Anfänger-Themen 6
C Methoden Objekte mit Hilfe einer Schleife in einer ArrayList erzeugen Java Basics - Anfänger-Themen 26
S Hilfe bei einer Aufgabe Java Basics - Anfänger-Themen 19
2 kapitalwertberechnung mit hilfe einer methode Java Basics - Anfänger-Themen 8
3 Bitte um Hilfe bei Lösung einer Aufgabe Java Basics - Anfänger-Themen 16
A Brauche Hilfe mit einer Forschleife Java Basics - Anfänger-Themen 20
S BITTE UM HILFE: Unterschied Deklaration und Signatur einer Methode Java Basics - Anfänger-Themen 3
N Bitte um Hilfe - zyklisch Existenz einer Datei prüfen Java Basics - Anfänger-Themen 21
K Hilfe bei einer Shrink Funktion Java Basics - Anfänger-Themen 8
P Zeilnumbruch vermeiden bei einer Tabelle *hilfe* Java Basics - Anfänger-Themen 11
F Hilfe bei einer Aufgabe Java Basics - Anfänger-Themen 2
N Hilfe zur Erstellung einer Internet-Plattform Java Basics - Anfänger-Themen 5
H Hilfe bei Ausgabe in einer Datei. Java Basics - Anfänger-Themen 5
R Hilfe! Daten aus einer excelliste auslesen und. Java Basics - Anfänger-Themen 3
K Bräuchte dringend Hilfe bei einer Schulaufgabe Java Basics - Anfänger-Themen 2
G Hilfe zur einer Aufgabe: Datumsüberprüfung beim Gregorianis Java Basics - Anfänger-Themen 2
G [Hilfe] Keys aus einer Map auslesen? Wie? Java Basics - Anfänger-Themen 3
Q Hilfe bei Hausaufgeben Java Basics - Anfänger-Themen 0
J Hilfe beim Label animieren Java Basics - Anfänger-Themen 1
S Hilfe Java Basics - Anfänger-Themen 1
K Hilfe bei Methoden Übung Java Basics - Anfänger-Themen 6
Chabub Hilfe bei Stacks und Queue Java Basics - Anfänger-Themen 2
J Hilfe beim verstehen Java Basics - Anfänger-Themen 3
A Hilfe bei Java Projekt Java Basics - Anfänger-Themen 4
I Brauche Hilfe bei Objektorientiertem programmieren Java Basics - Anfänger-Themen 23
B Hilfe bei Generics Java Basics - Anfänger-Themen 11
L Anfänger braucht Hilfe - Stecke beim Lernen fest Java Basics - Anfänger-Themen 10
M Brauche Hilfe bei If-Scheifen Java Basics - Anfänger-Themen 2
M Hilfe bei Strukturierung eines Buchungssystems Java Basics - Anfänger-Themen 3
J Replace mit Hilfe von ArrayLists Java Basics - Anfänger-Themen 6
J Hilfe bei Übungsaufgabe Java Basics - Anfänger-Themen 17
Bluedaishi Hilfe beim erklären dieser Methode Java Basics - Anfänger-Themen 5
K Error bei meinem Programm - Hilfe Java Basics - Anfänger-Themen 8
K Java Projekt Hilfe Java Basics - Anfänger-Themen 5
F ich brauche Hilfe bei Listen Java Basics - Anfänger-Themen 13
J Hilfe beim Programmieren Java Basics - Anfänger-Themen 5
A suche dringend Hilfe!! Java Basics - Anfänger-Themen 6
S Hilfe. Generics und BiFunctions Java Basics - Anfänger-Themen 10
L hilfe run button funktioniert nicht Java Basics - Anfänger-Themen 13
S Hilfe : Unendlich viele Zufallszahlen erstellen? Java Basics - Anfänger-Themen 8
J Ich brauche Hilfe bei einem Code (Variablen speichern) Java Basics - Anfänger-Themen 29
E Ich Brauche Hilfe Java Basics - Anfänger-Themen 3
L Brauche Hilfe beim arbeiten mit Konstruktoren Java Basics - Anfänger-Themen 20
F Hilfe - Wahrheitswert überprüfen ohne If Java Basics - Anfänger-Themen 2
M Hilfe bei Testfällen. Java Basics - Anfänger-Themen 12
I Methoden char Array Aufgabe (bitte hierbei um Hilfe) Java Basics - Anfänger-Themen 3
A Hilfe, LinkedList Java Basics - Anfänger-Themen 2
F Hilfe für einen Anfänger! Java Basics - Anfänger-Themen 4
F Regex Hilfe Java Basics - Anfänger-Themen 3
ZH1896ZH OOP Verstehe nicht was der Hinweis bedeutet, bitte um Hilfe! Java Basics - Anfänger-Themen 2
S Ein Java Anfänger braucht Hilfe Java Basics - Anfänger-Themen 5
S Hilfe bei meinem Code [Schleife]? Java Basics - Anfänger-Themen 5
S Brauche hilfe in Java [Fehler in mein Code]? Java Basics - Anfänger-Themen 2
S Wie ende ich mein Pogrammierung? [Hilfe] Java Basics - Anfänger-Themen 1
S Unbedingte hilfe bei Java Aufgabe [Schleife / Zinsrechnung] Java Basics - Anfänger-Themen 14
I Dezimalzahlen - Hilfe Java Basics - Anfänger-Themen 2
J Hilfe bei Java Aufgabe (Restschuld berechnen) Java Basics - Anfänger-Themen 11
S Hilfe bei Java Aufgabe (Schleifen) Java Basics - Anfänger-Themen 25
S Ein- Ausgaben Java [Hilfe] Java Basics - Anfänger-Themen 3
P Hilfe bei Double Java Basics - Anfänger-Themen 1
J Hilfe zu Codingame Java Basics - Anfänger-Themen 1
I Objekte Hilfe Java Basics - Anfänger-Themen 8
B Hilfe bei InputStream To File Java Basics - Anfänger-Themen 22
B Dropbox Anbindung, Hilfe bei Authentification -> HttpServletRequest request Java Basics - Anfänger-Themen 3
L Kleine Hilfe beim Schreiben eines Programmes benötigt :D Java Basics - Anfänger-Themen 40
Blender3D GOTO (aus Digitaluhr, Hilfe !) Java Basics - Anfänger-Themen 38
Z Digitaluhr, Hilfe ! Java Basics - Anfänger-Themen 24
W Hilfe beim Chat Programm Java Basics - Anfänger-Themen 14
Z Hilfe, Summenformel in Java Java Basics - Anfänger-Themen 15
I Hilfe bei experiment Java Basics - Anfänger-Themen 2
I Hilfe bei der Logik Java Basics - Anfänger-Themen 9
N Hilfe bei Unistoff Java Basics - Anfänger-Themen 3
S Bitte Hilfe zu Fehlermeldung am Handy Java Basics - Anfänger-Themen 2
M Hilfe bei Projektorientierungs-Aufgabe !! Java Basics - Anfänger-Themen 3
I Do-While / Kalkulator / Bitte um Hilfe Java Basics - Anfänger-Themen 9
M Hamstersimulator- lösung hilfe benotigt Java Basics - Anfänger-Themen 3
M Hamstersimulator Hilfe Java Basics - Anfänger-Themen 46
S Erste Schritte Hilfe beim lernen von Programmieren Java Basics - Anfänger-Themen 2
D Hilfe um Pseudocode Analyse! Java Basics - Anfänger-Themen 1
J Variablen Hilfe bei diesem Code Java Basics - Anfänger-Themen 6
P Hilfe bei Java Taschenrechner Java Basics - Anfänger-Themen 25
D Erste Schritte Lösen dieser Aufgabe, Hilfe! Java Basics - Anfänger-Themen 12
F Potenz ausrechnen Hilfe! Java Basics - Anfänger-Themen 7
D Hilfe bei Codeverständnis Java Basics - Anfänger-Themen 15

Ähnliche Java Themen

Anzeige

Neue Themen


Oben