Validate Binary Search Tree Algorithm

In computer science, recursion is a method of solve a problem where the solution depends on solutions to smaller cases of the same problem. It follows that, for problems that can be solved easily by iteration, recursion is generally less efficient, and, for large problems, it is fundamental to use optimization techniques such as tail call optimization.

Validate Binary Search Tree source code, pseudocode and analysis