检查是否为BST

来源:互联网 发布:mac怎么下photoshop 编辑:程序博客网 时间:2024/05/17 06:07

题目描述

请实现一个函数,检查一棵二叉树是否为二叉查找树。

给定树的根结点指针TreeNode* root,请返回一个bool,代表该树是否为二叉查找树。


/*struct TreeNode {    int val;    struct TreeNode *left;    struct TreeNode *right;    TreeNode(int x) :            val(x), left(NULL), right(NULL) {    }};*/class Checker {public:         bool checkBST(TreeNode* root) {        // write code here        if(root==NULL) return true;      if(root->left && root->left->val > root->val)            return false;        if(root->left && root->left->right && root->left->right->val>root->val)            return false;        if(root->right && root->right->val < root->val)            return false;                return checkBST(root->left) && checkBST(root->right);    }};


0 0
原创粉丝点击