Your question is Validate Binary Search Tree. Start with the requirements on the right.
Run and submit as often as you like. When you're ready, talk me through your approach or go straight to the code.
Given the root of a binary tree, return True if it is a valid Binary Search Tree (BST), otherwise return False.
A valid BST requires that every node in the left subtree is strictly less than the current node, every node in the right subtree is strictly greater than the current node, and both subtrees must also be valid BSTs.
def is_valid_bst(root):