我无法找到二叉搜索树的最小元素。我已完成一些代码,但它无法正常工作。
public T getMinElement(TreeNode<T> node) {
//TODO: implement this
if (node == null){
return null;
}
if (node.getLeftChild() == null){
return (T) node;
}
else{
return getMinElement(node);
}
}
答案 0 :(得分:6)
你快到了!您只需要递归二叉搜索树的左子项(始终保证更小)。你还有一些语法错误,我修复过。
public <T> T getMinElement(TreeNode<T> node) {
if (node == null){
return null;
}
if (node.getLeftChild() == null){
return node.getData(); // or whatever your method is
} else{
return getMinElement(node.getLeftChild());
}
}