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
jonathanpizza Hilfe bei einer Übungsaufgabe Java Basics - Anfänger-Themen 3
jonathanpizza Hilfe bei einer Aufgabe Java Basics - Anfänger-Themen 5
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
M Hilfe - Array Aufgabe Java Basics - Anfänger-Themen 8
R Schulaufgabe, Bruache Hilfe mit non-static Methoden Java Basics - Anfänger-Themen 2
kevkev Hilfe bei Schiffe versenken Java Basics - Anfänger-Themen 5
FelixxF Erste Schritte Hilfe bei Fußball Manager Java Basics - Anfänger-Themen 2
C Brauche Hilfe beim Schreiben eines Programmes :/ Java Basics - Anfänger-Themen 1
C Brauche Hilfe um ein Programm zu schreiben Java Basics - Anfänger-Themen 8
josfe1234 Hilfe access denied ("java.io.FilePermission" " " "read") Java Basics - Anfänger-Themen 11
Vivien Hilfe bei Type Conversion Java Basics - Anfänger-Themen 3
Leo0909 Ich brauche Hilfe bei dieser Aufgabe Java Basics - Anfänger-Themen 2
D Hilfe beim Erzeugen eines Arrays NullPointerException wird ausgelöst Java Basics - Anfänger-Themen 11
J Doppelt verkette Liste ich bitte um Hilfe Java Basics - Anfänger-Themen 4
N Laufzeitberechnung - dringende Hilfe! Java Basics - Anfänger-Themen 1
G Java Hilfe Java Basics - Anfänger-Themen 3
J Java List, Bitte um Hilfe Java Basics - Anfänger-Themen 15
J Java List, bitte um Hilfe Java Basics - Anfänger-Themen 3
U anfänger braucht hilfe . wir konnten die aufgaben nicht beantworten Java Basics - Anfänger-Themen 5
A Schleifen, Hilfe! Java Basics - Anfänger-Themen 6
LeonDerStudent Hilfe bei Uniprojekt Java Basics - Anfänger-Themen 2
H Brauche Hilfe in Java Eclipse Programmieraufgabe Neuling Java Basics - Anfänger-Themen 3
B Hilfe bei Map Liste erstellen Java Basics - Anfänger-Themen 10
Kapfski Was habe ich falsch gemacht? Hilfe! Java Basics - Anfänger-Themen 17
R Java (Eclipse) "Lagerverwaltung" HILFE Java Basics - Anfänger-Themen 13
M Bräuchte Hilfe bei diesen Methoden Java Basics - Anfänger-Themen 4
dieter000 Aufgabe Hilfe Java Basics - Anfänger-Themen 17
Gaudimagspam Dringend Java Hilfe benötigt Java Basics - Anfänger-Themen 19
dieter000 Hilfe bei dem Beispiel, wie gehe ich sowas am besten an? Java Basics - Anfänger-Themen 32
Q Hilfe auf Aufgabe(Matrixmultiplikation) Java Basics - Anfänger-Themen 1
jonathanpizza Hilfe bei der Aufgabe Java Basics - Anfänger-Themen 19
pry bitte Hilfe beim Kreditrechner objektorientiert Java Basics - Anfänger-Themen 6
R Hilfe bei removeduplicates Java Basics - Anfänger-Themen 5
D Brauche Dringend Hilfe...Prozedur/Funktionsprozedur Ergebnis augeben Java Basics - Anfänger-Themen 11
marcooooo einmal noch schnell hilfe bitte:/ Java Basics - Anfänger-Themen 2
Q Hilfe bei Hausaufgeben Java Basics - Anfänger-Themen 2
J Hilfe beim Label animieren Java Basics - Anfänger-Themen 1
S Hilfe Java Basics - Anfänger-Themen 1
Kawastori 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

Ähnliche Java Themen


Oben