Validate Binary Search Tree

Total Accepted: 41822 Total Submissions: 194315 My Submissions

Given a binary tree, determine if it is a valid binary search tree (BST).

Assume a BST is defined as follows:

  • The left subtree of a node contains only nodes with keys less than the node's key.
  • The right subtree of a node contains only nodes with keys greater than the node's key.
  • Both the left and right subtrees must also be binary search trees.

confused what "{1,#,2,3}" means? > read more on how binary tree is serialized on OJ.


OJ's Binary Tree Serialization:

The serialization of a binary tree follows a level order traversal, where '#' signifies a path terminator where no node exists below.

Here's an example:

   1
  / \
 2   3
    /
   4
    \
     5
The above binary tree is serialized as "{1,2,3,#,#,4,#,#,5}".

Show Tags
Tree Depth-first Search
Have you met this question in a real interview?
Yes
No
When did you meet this question?
1 week ago
1 month ago
3 months ago
6 months ago
More than 6 months ago
How long have you been interviewing?
Not yet started
1 month
3 months
6 months
More than 6 months

Discuss


You have not signed in, cannot submit your code.
Submit failed, try again please.

Submission Result: {[{ statusText }]}More Details

Share your acceptance!

Runtime Error Message: {[{ runtimeError }]}
Last executed input: {[{ lastExecutedTestCase }]}
{[{ resultCodeOutput }]}
Input: {[{ resultWaTestCaseInput }]}
Output: {[{ resultWaTestCaseOutput }]}
Expected: {[{ resultWaTestCaseExpected }]}

Send Feedback