题目:
题解:
遍历二叉树,利用二叉搜索树的特性:
- 如果目标值大于节点值,遍历右树
- 如果目标值小于节点值,遍历左树
- 如果目标值等于节点值,返回节点
时间复杂度:O(N)
public TreeNode searchBST(TreeNode root, int val) {
if (root == null) {
return null;
}
if (root.val == val) {
return root;
}
if (val > root.val) {
return searchBST(root.right, val);
}
return searchBST(root.left, val);
}