Schwachstelle finden

S

SelinaHuber

Mitglied
Hallo, ich habe hier noch eine Schwachstelle, finde sie aber nicht. Kann mir jemand weiter helfen?
Es geht um eine Methode, die das letzte Blatt eines binary Trees entfernen soll. Sie checkt ob es rechts oder links ist und sucht somit das letzte. Nur leider ist etwas fehlerhaft und ich kommm nich drauf was.
Java:
protected void removeLeaf(Node toRemove) { // Remove a leaf or a half-leave from the
        if (toRemove.isLeftChild()) {          // tree.
            toRemove.parent.left = null;       
            if (toRemove.right != null) {     
                toRemove.parent.left = toRemove.right;
                toRemove.right.parent = toRemove.parent;
            } else if (toRemove.left != null) {
                toRemove.parent.left = toRemove.left;
                toRemove.left.parent = toRemove.parent;
            }
        } else if (toRemove.isRightChild()) {
            toRemove.parent.right = null;
            if (toRemove.left != null) {
                toRemove.parent.right = toRemove.left;
                toRemove.left.parent = toRemove.parent;
            } else if (toRemove.right != null) {
                toRemove.parent.right = toRemove.right;
                toRemove.right.parent = toRemove.parent;
            }
        } else {
            root = toRemove.left != null ? toRemove.left : toRemove.right;
        }
    }
 
B

Barista

Top Contributor
Scheinbar geht es darum, irgendein Node zu löschen.

Dann hängst Du an den Parent ein eventuell vorhandenes Kind.

Wenn Du zwei Kinder hast, bleibt eines auf der Strecke.
 
S

SelinaHuber

Mitglied
Scheinbar geht es darum, irgendein Node zu löschen.

Dann hängst Du an den Parent ein eventuell vorhandenes Kind.

Wenn Du zwei Kinder hast, bleibt eines auf der Strecke.
ja genau. eben das toRemove. Es wird gesucht und dann geschaut ob es Kindsknoten hat. Wenn ja -> habe diese auch wieder welche? und sind die null oder nicht
 
mihe7

mihe7

Top Contributor
@SelinaHuber Wenn Du die Wurzel löschst, dann gibt es eine neue Wurzel. Das ist richtig. Allerdings hat der zu löschende Knoten ggf. sowohl linke als auch rechte Kinder. Du setzt als Wurzel einfach z. B. den linken Kindknoten. Der rechte Teilbaum fliegt damit komplett raus.
 
Held21

Held21

Mitglied
Hey,
ich kann mihe7 zustimmen. Ich habe letzte Woche ein ähnliches Problem. Der Teilbaum sollte dann entfernt werden.
Liebe Grüße
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
D kleinste Wurzel finden Java Basics - Anfänger-Themen 9
UnknownInnocent Richtigen Pfad beim einlesen von Datei finden Java Basics - Anfänger-Themen 2
Devin Wo kann man einen Java Lehrplan finden? Java Basics - Anfänger-Themen 5
Y Wie kann ich ein Element in einer toString finden. Java Basics - Anfänger-Themen 2
V Beliebige Dreistellige Zahl Teiler finden Java Basics - Anfänger-Themen 4
J Lösungen zu einem Lückentext finden Java Basics - Anfänger-Themen 0
S Input/Output Reader/Writer finden file nicht Java Basics - Anfänger-Themen 3
S Streams - kleinstes Element finden Java Basics - Anfänger-Themen 4
L Koordinate mit meisten Überlappungen in 3D-Raum finden Java Basics - Anfänger-Themen 9
KogoroMori21 Größten gemeinsamen Teiler finden Java Basics - Anfänger-Themen 7
F Methoden Bitte Helft mir meinen Fehler zu finden. Möchte in diesem Bankenprogramm durch die Konsoleneingabe auswählen welches Konto reduziert und welches erhö Java Basics - Anfänger-Themen 17
Kirby.exe Fehlende Int Werte aus Array mit streams finden Java Basics - Anfänger-Themen 19
I Preis finden für ein Uber-App(?) Java Basics - Anfänger-Themen 3
D Binärbaum Blätter finden und Ausgeben Java Basics - Anfänger-Themen 22
L Classpath Alle Dateien im Classpath finden Java Basics - Anfänger-Themen 4
O Suchbaum Elternknoten finden Level eines Knoten bestimmen Java Basics - Anfänger-Themen 24
H pfad finden Java Basics - Anfänger-Themen 12
G Excle datei aus resources folder finden und lesen Java Basics - Anfänger-Themen 5
M Duplikate in Array finden... Java Basics - Anfänger-Themen 9
A Mit Rekursion Zufallszahlen erstellen und größte finden Java Basics - Anfänger-Themen 5
S Maxium aus einer File finden Java Basics - Anfänger-Themen 12
R HTTP-Links in Java Class finden Java Basics - Anfänger-Themen 3
S Substrings finden Java Basics - Anfänger-Themen 5
C Finden mehrerer Lösungen Java Basics - Anfänger-Themen 0
L Backupdateien finden Java Basics - Anfänger-Themen 8
D doc.seect jsouo bestimmtes class element finden Java Basics - Anfänger-Themen 1
N Anfang eine Array Schleife finden Java Basics - Anfänger-Themen 18
D Erste Schritte Aktivsten Zweistündigen Abschnitt finden Java Basics - Anfänger-Themen 35
I Richtige Java-Version finden? Java Basics - Anfänger-Themen 17
DaCrazyJavaExpert Alle Zahlenkombinationen aus 9 zahlen finden Java Basics - Anfänger-Themen 17
S Erste Schritte Zwischen zwei Punkten ein Minimumpkt./Maxima finden Java Basics - Anfänger-Themen 1
M Denn dichtesten Wert finden Java Basics - Anfänger-Themen 3
N Objekte in ArrayList finden Java Basics - Anfänger-Themen 10
D Die Zahl in der Mitte finden Java Basics - Anfänger-Themen 20
kilopack15 Größte zahl eines Arrays finden Java Basics - Anfänger-Themen 1
H Fehler finden Java Basics - Anfänger-Themen 5
R Best Practice Palindrom in einem Text finden Java Basics - Anfänger-Themen 18
M Kleinsten Index in Array finden Java Basics - Anfänger-Themen 6
S Objekt finden und benutzen Java Basics - Anfänger-Themen 3
C Lottospiel kann Fehler nicht finden Java Java Basics - Anfänger-Themen 6
F System kann die Datei nicht finden Java Basics - Anfänger-Themen 7
D Werte in eckige Klammern finden Java Basics - Anfänger-Themen 3
S Input/Output Buchstaben in Eingabe finden und ausgeben Java Basics - Anfänger-Themen 5
A regulären Ausdruck mit Hilfe der Klasse Scanner in einem String finden Java Basics - Anfänger-Themen 2
N Objekt in einer Liste finden? Java Basics - Anfänger-Themen 3
C Finden und verändern Java Basics - Anfänger-Themen 1
T Erste Schritte Elemente finden, deren Name erst "zusammengesetzt" wird Java Basics - Anfänger-Themen 8
A Max finden und umtauschen Java Basics - Anfänger-Themen 2
K String in String-Array finden Java Basics - Anfänger-Themen 7
S Baumstruktur: tiefsten Knoten finden Java Basics - Anfänger-Themen 3
D Ein Objekt in einem Baum finden und ausgeben. Java Basics - Anfänger-Themen 4
F Erste Schritte Hilfe beim Algorithmus finden Java Basics - Anfänger-Themen 6
D Zahl in einem String finden Java Basics - Anfänger-Themen 4
C Methoden Diagonalen am best. Punkt im zweidimensionales array finden Java Basics - Anfänger-Themen 3
A Compiler-Fehler Kann Fehler nicht finden Java Basics - Anfänger-Themen 2
R Fehler finden die 2. Java Basics - Anfänger-Themen 7
N Bug finden im Programm Java Basics - Anfänger-Themen 13
P letzte Datei finden Java Basics - Anfänger-Themen 18
M Zwei gleiche Eintraege in ArrayList finden Java Basics - Anfänger-Themen 15
J Inhalt in einem Text-File finden und in ein Array schreiben Java Basics - Anfänger-Themen 5
I String in .txt finden Java Basics - Anfänger-Themen 9
T Wörter mit @ als Zeichen finden Java Basics - Anfänger-Themen 13
J Methoden Kann Fehler nicht finden Java Basics - Anfänger-Themen 6
M Letztes Element im Array finden Java Basics - Anfänger-Themen 3
R Erste Schritte Minimum und Maximum in Array finden Java Basics - Anfänger-Themen 29
H Schnell HTML-Tags finden Java Basics - Anfänger-Themen 5
Kenan89 Wo sind die Java Standard Library Source Codes zu finden? Java Basics - Anfänger-Themen 5
R Rekursive Methode, Files finden Java Basics - Anfänger-Themen 2
S brauche hilfe beim fehler finden Java Basics - Anfänger-Themen 2
B Dokumentation in der jre-Library finden Java Basics - Anfänger-Themen 9
T Datentypen Knoten Großvater finden? Java Basics - Anfänger-Themen 12
A Fehler finden und Ausgabe Java Basics - Anfänger-Themen 14
P Key anhand von Value finden (Hashtable) Java Basics - Anfänger-Themen 3
Q ProcessBuilder kann datei nicht finden Java Basics - Anfänger-Themen 2
K taschenrechner - Fehler beim Kürzen eines Bruches finden Java Basics - Anfänger-Themen 20
S Richtige String-Variable finden Java Basics - Anfänger-Themen 3
C Fehler in Java-Code finden Java Basics - Anfänger-Themen 17
D Geeigneten Speicherort finden ? Java Basics - Anfänger-Themen 11
K Groessere Zahl finden und berechnen?? Java Basics - Anfänger-Themen 6
H Methoden Schachbrettmuster finden Java Basics - Anfänger-Themen 11
brunothg Gameserver finden Java Basics - Anfänger-Themen 7
X im Verzeichnissbaum recursiv nur bestimmte Dateien finden Java Basics - Anfänger-Themen 7
F Methoden Fehler finden in Funktion Java Basics - Anfänger-Themen 3
A Prüfen ob Datei geöffnet ist bzw Stream finden Java Basics - Anfänger-Themen 2
R Text in Datei finden Java Basics - Anfänger-Themen 2
F Wo kann ich die java source attachment finden? Java Basics - Anfänger-Themen 8
B QuickSort - Fehler nicht zu finden Java Basics - Anfänger-Themen 2
N jar kann Bilder nicht finden(?) Java Basics - Anfänger-Themen 4
N packages und finden von Klassen Java Basics - Anfänger-Themen 2
jgh System.out finden Java Basics - Anfänger-Themen 4
M finden des inifiles etc. Java Basics - Anfänger-Themen 4
S Klassenbibliotheken nutzen und finden? Java Basics - Anfänger-Themen 6
L die Position von Suchtreffern von Lucene finden Java Basics - Anfänger-Themen 2
H Strategie um einen Bug zu finden Java Basics - Anfänger-Themen 4
G algorithmus zum finden der größten zahl von vieren Java Basics - Anfänger-Themen 6
B mit drawString direkt zeichnen, aber wie das Ende finden? Java Basics - Anfänger-Themen 3
P Doppelte Einträge in mehreren Textfiles finden und ausgeben Java Basics - Anfänger-Themen 8
M Das System kann die angegebene Datei nicht finden Java Basics - Anfänger-Themen 12
J Hilfe bei BUG finden. Java Basics - Anfänger-Themen 10
S NullPointerException finden Java Basics - Anfänger-Themen 3

Ähnliche Java Themen


Oben