这是我为遍历区间树而编写的函数。我注意到它无法访问某些节点。假设代码很清楚,我想知道它在哪里失败。
public boolean searchTree(Node node,int x)
{
while(node!=null&&!node.getInterval().containsPoint(x))
{
if(node.getNodeLeft()!=null&&(node.getNodeLeft().getMax()>=x))
{
node=node.getNodeLeft();
}
else
{
node=node.getNodeRight();
}
}
return node!=null;
}