Question
Java class TreeNode is defined as below: public class TreeNode { public int val; public TreeNode left, right; public TreeNode( int x) { val =
Java class TreeNode is defined as below:
public class TreeNode { public int val; public TreeNode left, right; public TreeNode(int x) { val = x; } }
Suppose you only have the reference of the root, please write a method that returns true if the binary tree is binary search tree; false otherwise.
Please be careful! Checking every node for "greater than the left child and smaller than the right child" is insufficient. The binary tree below is not a binary search tree and your algorithm should correctly detect it.
You may write a private recursive method then a wrapper method.
The code should be in java.
Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started