任何人都可以帮助我做到这一点:我需要一个用于二叉搜索树 ADT 的公共(public)方法,该方法返回对树中具有最小值的节点中的信息的引用。该方法的签名是:
公共(public) T min()
A.设计该方法的交互式版本。
B.设计该方法的递归版本。
C.哪种方法更好?请解释一下。
这不是硬件或任何东西,它是我自己的实践。
最佳答案
因为我认为如果我给你提供了你不会学到的解决方案,我会给你一个链接,让你阅读有关二叉搜索树的更多信息:http://en.wikipedia.org/wiki/Binary_search_tree
在那条评论之后,我的方式:
public T min() {
return recMin(root).getInfo();
}
public BSTnode<T> recMin(BSTnode<T> tree) {
if (tree == null) {
throw new NoSuchElementException();
}
if (tree.left == null) {
return tree;
}
return recMin(tree.left);
}
public T IterationMin(BSTnode<T> tree) {
if (tree == null) {
throw new NoSuchElementException();
}
while (tree.left != null) {
tree = tree.left;
}
return tree.getInfo();
}
关于java - 需要二叉搜索树方法 : find minimum value node,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16702371/