【发布时间】:2015-03-30 03:23:34
【问题描述】:
我正在尝试制作一个 BST 程序,该程序能够插入给定的数字,然后通过说真或假来告诉用户该数字是否在 BST 中。但是,即使插入了数字,它也总是注册为假。谁能告诉我这里哪里出错了?如果需要,我可以提供其余的类文件。
public class BinarySearchTree implements BST
{
private int n;
private Node r;
private Node l;
public void enter(int num)
{
Node node = new Node(num);
if (num < node.getData())
{
if (node.getL() != null)
{
insert(num);
}
else
{
node.setL(new Node(num));
}
}
else if (num > node.getData())
{
if (node.getR() != null)
{
insert(num);
}
else
{
node.setR(new Node(num));
}
}
}
public boolean search (int num)
{
if (num == this.n)
{
return true;
}
else if (num > this.n)
{
if (r == null)
{
return false;
}
else
{
return true;
}
}
else if (num < this.n)
{
if (l == null)
{
return false;
}
else
{
return true;
}
}
return false;
}
}
【问题讨论】:
标签: java search insert binary-search-tree