Friday, March 14, 2014

LeetCode: Validate Binary Search Tree

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.

Solution:

Key points: find a way to pass the value of the grand parent. Got the idea from here.
Can also be solved by in-order traversing the BST and then check whether collected values are in the ascending order.

No comments:

Post a Comment