我的BST中的findMax()方法有问题。当我运行它时,会出现堆栈溢出错误(ha)我就是不明白我到底做错了什么任何洞察都将不胜感激。这是我目前掌握的密码。
public AnyType findMax() throws EmptyBSTException {
if ( isEmpty() )
throw new EmptyBSTException();
return findMax( root ).getElement();
}
private BinaryNode<AnyType> findMax( BinaryNode<AnyType> node ) {
if(root.getRight() == null) {
return root;
}
else {
return findMax(root.getRight())
}
}
最佳答案
您几乎肯定希望在第二个函数中到处都写node
,而不是root
。