Example #1
0
 bool validateBST(TreeNode* root, TreeNode*& pre)
 {
     if(!root) return true;
     if(!validateBST(root->left, pre)) return false;
     if(pre && pre->val>=root->val) return false;
     pre = root;
     return validateBST(root->right, pre);
 }
Example #2
0
int main ()
{
	Node* root = createBST(std::vector<int>(2,3,4,5,6,7));

	assert(validateBST(root));

	return 0;
}
Example #3
0
 bool isValidBST(TreeNode* root) 
 {
     TreeNode *pre = NULL;
     return validateBST(root, pre);
 }