package DataStructures.Trees;public class ValidBSTOrNot {class Node {int data;Node left, right;public Node(int item) {data = item;left = right = null;}}//Root of the Binary Tree/* can give min and max value according to your code orcan write a function to find min and max value of tree. *//* returns true if given search tree is binarysearch tree (efficient version) */boolean isBST(Node root) {return isBSTUtil(root, Integer.MIN_VALUE,Integer.MAX_VALUE);}/* Returns true if the given tree is a BST and itsvalues are >= min and <= max. */boolean isBSTUtil(Node node, int min, int max) {/* an empty tree is BST */if (node == null)return true;/* false if this node violates the min/max constraints */if (node.data < min || node.data > max)return false;/* otherwise check the subtrees recursivelytightening the min/max constraints */// Allow only distinct valuesreturn (isBSTUtil(node.left, min, node.data - 1) &&isBSTUtil(node.right, node.data + 1, max));}}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。