Hi Leute ,
ich frag mich ob meine getMaxValue funktion so richtig funktioniert ???
hier mein code :
ich frag mich ob meine getMaxValue funktion so richtig funktioniert ???
hier mein code :
Java:
package treeNodeKlausur;
public class TreeNode {
private float info;
private TreeNode left, right;
public TreeNode(float c, TreeNode left, TreeNode right){
info = c;
this.left = left;
this.right = right;
}
public void setLeftNode(TreeNode child){
left = child;
}
public void setRightNode(TreeNode child){
right = child;
}
public void setInfo(float c){
info = c;
}
public TreeNode getLeftNode(){
return left;
}
public TreeNode getRightNode(){
return right;
}
public float getInfo(){
return info;
}
private float max(float a, float b){
return a<b ? b : a; //wenn a kleiner b, return b, sonst a
}
private float min(float a, float b){
return a>b ? b : a;
}
public float getMaxValue(){
float maxValue=getInfo();
if(getLeftNode()!=null)
maxValue=max(getLeftNode().getMaxValue(), maxValue);
if(getRightNode()!=null)
maxValue=max(getRightNode().getMaxValue(), maxValue);
return maxValue;
}
public float getMinValue (){
float minValue=getInfo();
if(getLeftNode()!=null) // Nimm den kleineren Wert von dem aktuellen oder vom linken Node
minValue=min(getLeftNode().getMinValue(), minValue);
if(getRightNode()!=null) // Nimm den kleineren Wert von dem aktuellen oder vom rechten Node
minValue=min(getRightNode().getMinValue(), minValue);
return minValue;
}