80: Validate binary search tree

Дано бинарное дерево, необходимо проверить является ли оно бинарным деревом поиска

Бинарное дерево поиска определено как:

  • левое поддерево узла содержит значения строго меньше родительского
  • правое поддерево узла содержит значения строго больше родительского
  • левое и правое поддеревья должны быть бинарными деревьями поиска

 

Пример 1

Input:         4   
              / \  
             3   5 

Output: true

Пример 2

Input:         4   
              / \  
             3   2 

Output: false
Difficulty:Medium
Topic:Tree
Problem #:80