我试图使用rootNode(BSTN)的搜索递归地调用搜索,这给我一个错误,提示错误的类型,或者用rootNode的子树调用getNode(错误,为BST类型未定义),这也给我一个错误我的类型有误
package sizebst;
public class sizeBST {
sizeBSTN rootNode;
public SizeBST(BSTN root){
rootNode = root;
}
public boolean search(int target){
//isn't complete but I want to recrusively search the tree calling methods from the other class
getNode(rootNode.LSubtree, target);
}
这是我要从中调用getNode的方法。
package sizebst;
public class SizeBSTN {
SizeBSTN LSubtree;
SizeBSTN RSubtree;
int data;
int size;
public SizeBSTN(int data){
LSubtree = null;
RSubtree = null;
this.data = data;
size = 1;
}
public static SizeBSTN getNode(SizeBSTN node, int target){
// isn't working yet but it finds a node and returns it.
}
}
最佳答案
由于getNode
是static
类中的SizeBSTN
方法,请尝试
SizeBSTN.getNode(rootNode.LSubtree, target);
代替
getNode(rootNode.LSubtree, target);
另一种方法是使用
import static sizebst.SizeBSTN.getNode;
现在您可以在没有类引用的情况下调用它。