Example 4 : Check given binary tree is BST or not

TopicDifficultyCompanies
Binary Search Tree
MEDIUM
Google
Microsoft
Amazon
Adobe

Given a binary tree, write a program to check if it is a valid Binary Search Tree(BST).

Problem Note

A BST has the following properties:

  • 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 BST.
  • Return 1 if the given binary tree is a BST, else return 0.

Example 1

      5
/ \
3 6
/ \
2 4
/
1
Input: [5, 3, 6, 2, 4, -1, -1, 1, -1, -1, -1, -1, -1]
Output: 1
Explanation: Every node satisties the properties of a BST.

Example 2

   10
/ \
5 4
Input: [10, 5, 4]
Output: 0
Explanation: The root node's value is 10 but its right child's value is 4.

Code Editor

Practice and Learn

Best way to learn is through solving real problems. Practice this problem in this code editor.