题目描述:给定二叉搜索树(BST)的根节点和一个值。 你需要在BST中找到节点值等于给定值的节点。 返回以该节点为根的子树。 如果节点不存在,则返回 NULL。
提示:
代码实现
递归实现
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
| class Solution { private TreeNode searchNode;
public TreeNode searchBST(TreeNode root, int val) { search(root, val); return searchNode; }
public void search(TreeNode root, int val) { if (root == null) { return; } if (root.val == val) { searchNode = root; } if (root.val > val) { search(root.left, val); } else if (root.val < val) { search(root.right, val); } } }
|