【发布时间】:2018-06-11 03:21:33
【问题描述】:
如果我想在树中找到比元素 x 大的最小元素,这是正确的方法吗?
class Node {
int data;
Node left, right;
}
Node root;
public Integer successorOf(int x) {
return successorOf(x, root);
}
private Integer successorOf(int x, Node n) {
if (n == null) {
return null;
}
if (x < n.data) {
Integer res = successorOf(x, n.left);
if (res == null)
res = n.data;
return res;
} else {
return successorOf(x, n.right);
}
}
我觉得这个解决方案不会检查整个树。
非常感谢您的帮助!
【问题讨论】:
-
重复To find largest element smaller than K in a BST(只需翻转逻辑)或In Order Successor in Binary Search Tree(不完全清楚你在问什么)。
标签: java tree binary-search-tree