在Java中遍历树并检查特定值
我有一个BinaryTree类,它包含自定义类型TreeNode的根节点 TreeNode类在Java中遍历树并检查特定值,java,data-structures,tree-traversal,Java,Data Structures,Tree Traversal,我有一个BinaryTree类,它包含自定义类型TreeNode的根节点 TreeNode类 T value; BTree<T> left, right; 我需要实现这个方法,也许我必须使用递归的方法 是的,您需要递归搜索树。代码将如下所示: public boolean contains(BTree<T> root, T value) { if (root == null) { return false; } if (ro
T value;
BTree<T> left, right;
我需要实现这个方法,也许我必须使用递归的方法 是的,您需要递归搜索树。代码将如下所示:
public boolean contains(BTree<T> root, T value) {
if (root == null) {
return false;
}
if (root.getValue().equals(value)) {
return true;
}
return contains(root.getLeft(), value) || contains(root.getRight(), value);
}
@Override
public boolean contains(T value) {
return contains(this, value);
}
public boolean contains(b树根,T值){
if(root==null){
返回false;
}
if(root.getValue().equals(value)){
返回true;
}
返回包含(root.getLeft(),value)|包含(root.getRight(),value);
}
@凌驾
公共布尔包含(T值){
返回包含(此,值);
}
public boolean contains(BTree<T> root, T value) {
if (root == null) {
return false;
}
if (root.getValue().equals(value)) {
return true;
}
return contains(root.getLeft(), value) || contains(root.getRight(), value);
}
@Override
public boolean contains(T value) {
return contains(this, value);
}