Pushing stuff
parent
063a981d93
commit
bede6bfc88
|
@ -14,6 +14,7 @@ public class Baum {
|
|||
if(wurzel == null)
|
||||
{
|
||||
wurzel = new Knoten(wert);
|
||||
return;
|
||||
}
|
||||
wurzel.add(wert);
|
||||
}
|
||||
|
@ -51,7 +52,7 @@ public class Baum {
|
|||
{
|
||||
return "Baum ist noch leer";
|
||||
}
|
||||
|
||||
sb = new StringBuilder();
|
||||
list.add(wurzel);
|
||||
|
||||
wurzel.breitenSuche();
|
||||
|
@ -149,7 +150,7 @@ public class Baum {
|
|||
{
|
||||
if(linkesKind != null)
|
||||
{
|
||||
list.add(linkesKind);
|
||||
list.add(this.linkesKind);
|
||||
}
|
||||
if(rechtesKind != null)
|
||||
{
|
||||
|
@ -194,8 +195,6 @@ public class Baum {
|
|||
linkesKind.linkesKind = zuLöschen.linkesKind;
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -208,11 +207,41 @@ public class Baum {
|
|||
if(value < wert)
|
||||
{
|
||||
if(rechtesKind.value == wert)
|
||||
rechtesKind = null;
|
||||
else
|
||||
{
|
||||
if(rechtesKind.linkesKind == null && rechtesKind.rechtesKind == null) //Keine Kinder
|
||||
{
|
||||
rechtesKind = null;
|
||||
}
|
||||
else if(rechtesKind.linkesKind != null && rechtesKind.rechtesKind == null)
|
||||
{
|
||||
rechtesKind = rechtesKind.linkesKind;
|
||||
}
|
||||
else if(rechtesKind.linkesKind == null && rechtesKind.rechtesKind != null)
|
||||
{
|
||||
rechtesKind = rechtesKind.rechtesKind;
|
||||
}
|
||||
else
|
||||
{
|
||||
Knoten zuLöschen = rechtesKind;
|
||||
rechtesKind = rechtesKind.rechtesKind.größterImTeilbaum();
|
||||
rechtesKind.linkesKind = zuLöschen.linkesKind;
|
||||
if(rechtesKind != zuLöschen.rechtesKind)
|
||||
{
|
||||
rechtesKind.rechtesKind = zuLöschen.rechtesKind;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
else {
|
||||
rechtesKind.remove(wert);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
@ -223,9 +252,13 @@ public class Baum {
|
|||
{
|
||||
if(this.rechtesKind != null)
|
||||
{
|
||||
return this.rechtesKind.größterImTeilbaum();
|
||||
Knoten kind = this.rechtesKind.größterImTeilbaum();
|
||||
if (rechtesKind == kind)
|
||||
rechtesKind = null;
|
||||
|
||||
return kind;
|
||||
}
|
||||
|
||||
return this;
|
||||
|
||||
}
|
||||
|
|
|
@ -12,8 +12,15 @@ public static void main(String[] args) throws Exception
|
|||
b1.add(27);
|
||||
|
||||
b1.add(11);
|
||||
b1.add(85);
|
||||
|
||||
b1.add(45);
|
||||
b1.add(43);
|
||||
b1.add(46);
|
||||
|
||||
b1.remove(21);
|
||||
b1.remove(45);
|
||||
|
||||
|
||||
b1.inorder();
|
||||
|
||||
|
|
Loading…
Reference in New Issue