题解 | #牛群中的编号是否有效#

牛群中的编号是否有效

https://www.nowcoder.com/practice/2b4279d545124277a06a8e5eaa802375

1.考察知识点:

二叉树遍历、递归

2.编程语言:

C

3.解题思路:

根据已知的3个条件,判断该题使用递归解决。对于空的二叉树可以直接返回true,

先确定最后返回的是递归调用本函数对左子树和右子树进行判断,针对条件1、2

需要判断如果一个根节点左右不为空,且左边的比根节点值大或者右边比根节点值小,此时返回false;

4.完整代码:

/**
 * struct TreeNode {
 *	int val;
 *	struct TreeNode *left;
 *	struct TreeNode *right;
 * };
 */
/**
 * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
 *
 * 
 * @param root TreeNode类 
 * @return bool布尔型
 */
bool isValidBST(struct TreeNode* root ) {
    // write code here
    if(root == NULL) return true;
    if((root->left!=NULL && root->left->val > root->val) || (root->right!=NULL && root->right->val < root->val)){
        return false;
    }
    return isValidBST(root->left) && isValidBST(root->right);
}

#面试高频TOP202#
全部评论

相关推荐

最喜欢秋天的火龙果很...:第一份工作一定要往大的去,工资低点没事。后面换工作会更好找,即使你去小公司,你也不可能不会换工作的。所以找大的去
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
03-19 10:38
实力求职者:真的绷不住了,第一张霸总人设,第二张求生欲拉满
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务