Next Greater Number BST
Given a BST node, return the node which has value just greater than the given node.
Example:
Given the tree
100
/ \
98 102
/ \
96 99
\
97Given 97, you should return the node corresponding to 98 as thats the value just greater than 97 in the tree.
If there are no successor in the tree ( the value is the largest in the tree, return NULL).
Using recursion is not allowed.
Assume that the value is always present in the tree.
public class Solution {
public TreeNode getSuccessor(TreeNode a, int b) {
TreeNode ans = null;
while (a != null) {
if (a.val > b) {
ans = a;
a = a.left;
} else {
a = a.right;
}
}
return ans;
}
}Last updated