dimanche 17 mai 2015
Binärer Suchbaum - Size als Variabel in innerer Klasse speichern
Posted on 07:59 by verona
Hallo,
ich habe einen Binären Suchbaum mit innerer Node Klasse.
Zuerst habe ich eine Methode im Suchbaum selbst geschrieben die mir die Anzahl der Nodes im Unterbaum darstellt.
Ich greife öfters mit anderen Methoden auf diesen Wert zu, deshalb möchte ich ihn als Variabel für jede Node selbst abspeichern. Wie würdet ihr das machen? Müsste size ja beim Erstellen bzw. beim Insert der Node im Konstruktor angeben oder? Stehe da leider etwas am Schlauch ???:L
Klasse Tree sieht im Grundgerüst so aus:
Vielen Dank!
ich habe einen Binären Suchbaum mit innerer Node Klasse.
Zuerst habe ich eine Methode im Suchbaum selbst geschrieben die mir die Anzahl der Nodes im Unterbaum darstellt.
Code:
public int size() {
if(root==null)
return 0;
return findSize(this.root) -1;
}
public int findSize(Node root){
if(root == null)
return 0;
return findSize(root.leftChild) + findSize(root.rightChild) +1;
}
Klasse Tree sieht im Grundgerüst so aus:
Code:
public class Tree {
Node root;
public void insert(int key){
Node newNode = new Node(key);
if(root == null){
root = newNode;
}else{
Node focusNode = root;
Node parent;
while(true){
parent = focusNode;
if(key < focusNode.key){
focusNode = focusNode.leftChild;
if(focusNode == null){
parent.leftChild = newNode;
return;
}
} else{
focusNode = focusNode.rightChild;
if(focusNode == null){
parent.rightChild = newNode;
return;
}
}
}
}
}
class Node{
int size;
int key;
Node leftChild;
Node rightChild;
}
}
Vielen Dank!
Binärer Suchbaum - Size als Variabel in innerer Klasse speichern
Inscription à :
Publier les commentaires (Atom)
0 commentaires:
Enregistrer un commentaire