700. Search in a Binary Search Tree

700. Search in a Binary Search Tree

[Easy] “Given the root node of a binary search tree (BST) and a value, find the subtree where the node’s value equals the given value."

Link to Leetcode

Python3:

# Definition for a binary tree node.
# class TreeNode:
#     def __init__(self, x):
#         self.val = x
#         self.left = None
#         self.right = None

class Solution:
    def searchBST(self, root: TreeNode, val: int) -> TreeNode:
        if not root:
            return None
        elif root.val == val:
            return root
        elif root.val < val:
            return self.searchBST(root.right, val) 
        else:
            return self.searchBST(root.left, val)