LegendaryBeazt
Mitglied
Uns wurde folgender Code gegeben:
Wir müssen einen Stammbaum von Lisa Simpson erstellen. Die männlichen Vorfahren sollen links, die weiblichen rechts auf den BinärBaum. Einen Konstruktor Simpson mit String Name; habe ich bereits erstellt.
Ich weiß jedoch nicht, wie ich weitermachen sollte...
Hoffe jemand hier kann mir helfen!
Code:
public class BinaryTree<ContentType> {
/* --------- Anfang der privaten inneren Klasse -------------- */
private class BTNode<CT> {
private CT content;
private BinaryTree<CT> left, right;
public BTNode(CT pContent) {
// Der Knoten hat einen linken und einen rechten Teilbaum, die
// beide von null verschieden sind. Also hat ein Blatt immer zwei
// leere Teilbaeume unter sich.
this.content = pContent;
left = new BinaryTree<CT>();
right = new BinaryTree<CT>();
}
}
/* ----------- Ende der privaten inneren Klasse -------------- */
private BTNode<ContentType> node;
public BinaryTree() {
this.node = null;
}
public BinaryTree(ContentType pContent) {
if (pContent != null) {
this.node = new BTNode<ContentType>(pContent);
} else {
this.node = null;
}
}
public BinaryTree(ContentType pContent, BinaryTree<ContentType> pLeftTree, BinaryTree<ContentType> pRightTree) {
if (pContent != null) {
this.node = new BTNode<ContentType>(pContent);
if (pLeftTree != null) {
this.node.left = pLeftTree;
} else {
this.node.left = new BinaryTree<ContentType>();
}
if (pRightTree != null) {
this.node.right = pRightTree;
} else {
this.node.right = new BinaryTree<ContentType>();
}
} else {
// Da der Inhalt null ist, wird ein leerer BinarySearchTree erzeugt.
this.node = null;
}
}
public boolean isEmpty() {
return this.node == null;
}
public void setContent(ContentType pContent) {
if (pContent != null) {
if (this.isEmpty()) {
node = new BTNode<ContentType>(pContent);
this.node.left = new BinaryTree<ContentType>();
this.node.right = new BinaryTree<ContentType>();
}
this.node.content = pContent;
}
}
public ContentType getContent() {
if (this.isEmpty()) {
return null;
} else {
return this.node.content;
}
}
public void setLeftTree(BinaryTree<ContentType> pTree) {
if (!this.isEmpty() && pTree != null) {
this.node.left = pTree;
}
}
public void setRightTree(BinaryTree<ContentType> pTree) {
if (!this.isEmpty() && pTree != null) {
this.node.right = pTree;
}
}
public BinaryTree<ContentType> getLeftTree() {
if (!this.isEmpty()) {
return this.node.left;
} else {
return null;
}
}
public BinaryTree<ContentType> getRightTree() {
if (!this.isEmpty()) {
return this.node.right;
} else {
return null;
}
}
}
Wir müssen einen Stammbaum von Lisa Simpson erstellen. Die männlichen Vorfahren sollen links, die weiblichen rechts auf den BinärBaum. Einen Konstruktor Simpson mit String Name; habe ich bereits erstellt.
Ich weiß jedoch nicht, wie ich weitermachen sollte...
Hoffe jemand hier kann mir helfen!