leetcode - 98. 验证二叉搜索树
给定一个二叉树,判断其是否是一个有效的二叉搜索树。
假设一个二叉搜索树具有如下特征:
- 节点的左子树只包含小于当前节点的数。
- 节点的右子树只包含大于当前节点的数。
- 所有左子树和右子树自身必须也是二叉搜索树。
示例 1:
示例 2:
class Solution {public:bool dfs(TreeNode* root,long lower,long upper){if(root==NULL) # 如果该结点为NULL,直接返回1return 1;int vall = root->val; # 计算该节点对应的值if(lower!=-LONG_MAX && vall<=lower) # 如果右子节点小于父节点的值,则不是搜索二叉树return 0;if(upper!=LONG_MAX && vall>=upper) # 如果左子节点大于父子节点的值,则不是搜索二叉树return 0;if(!dfs(root->right,vall,upper)) # 判断该结点的右子节点是否符合要求return 0;if(!dfs(root->left,lower,vall)) # 判断该节点的左子节点是否符合要求return 0;return 1;}bool isValidBST(TreeNode* root) {return dfs(root,-LONG_MAX,LONG_MAX);}
};
leetcode - 98. 验证二叉搜索树相关推荐
- Leetcode 98:验证二叉搜索树
Leetcode 98:验证二叉搜索树 题目描述 我的解法:非递归的中序遍历 其它解法1:非递归的中序遍历,用LONG_MIN规避树的val等于INT_MIN的情况 其他解法2:递归的中序遍历思想 其 ...
- LeetCode 98. 验证二叉搜索树(中序遍历)
文章目录 1. 题目信息 2. 解题 2.1 递归中序 2.2 非递归中序 1. 题目信息 给定一个二叉树,判断其是否是一个有效的二叉搜索树. 假设一个二叉搜索树具有如下特征: 节点的左子树只包含小于 ...
- leetcode —— 98. 验证二叉搜索树
给定一个二叉树,判断其是否是一个有效的二叉搜索树. 假设一个二叉搜索树具有如下特征: 节点的左子树只包含小于当前节点的数. 节点的右子树只包含大于当前节点的数. 所有左子树和右子树自身必须也是二叉搜索 ...
- LeetCode 98 验证二叉搜索树
题目链接:力扣 思路 递归 递归函数声明 bool isValidBST(TreeNode* root,int lower,int upper);//判断根节点是否在lower和upper之间 递归出 ...
- leetcode 98. 验证二叉搜索树 递归遍历左右子树和中序遍历 c语言解法
如题: 给定一个二叉树,判断其是否是一个有效的二叉搜索树. 假设一个二叉搜索树具有如下特征: 节点的左子树只包含小于当前节点的数. 节点的右子树只包含大于当前节点的数. 所有左子树和右子树自身必须也是 ...
- Leetcode 98. 验证二叉搜索树 (每日一题 20210810)
给定一个二叉树,判断其是否是一个有效的二叉搜索树.假设一个二叉搜索树具有如下特征:节点的左子树只包含小于当前节点的数. 节点的右子树只包含大于当前节点的数. 所有左子树和右子树自身必须也是二叉搜索树. ...
- LeetCode 98. 验证二叉搜索树 思考分析
题目 给定一个二叉树,判断其是否是一个有效的二叉搜索树. 假设一个二叉搜索树具有如下特征: 节点的左子树只包含小于当前节点的数. 节点的右子树只包含大于当前节点的数. 所有左子树和右子树自身必须也是二 ...
- LeetCode 98. 验证二叉搜索树(递归)(迭代)
题目描述 给定一个二叉树,判断其是否是一个有效的二叉搜索树. 假设一个二叉搜索树具有如下特征: 节点的左子树只包含小于当前节点的数. 节点的右子树只包含大于当前节点的数. 所有左子树和右子树自身必须也 ...
- Leetcode 98. 验证二叉搜索树 解题思路及C++实现
解题思路: 分别验证root的左右子树是否是二叉树,同时,左子树的最大值要小于root->val,右子树的最小值要大于root->val. 在左右子树中,一直向root的左子树探索,就能得 ...
最新文章
- Failed to resolve:com.android.support:appcompat-v7:27.+
- php checkbox美化,纯CSS3美化radio和checkbox_html/css_WEB-ITnose
- 7-24 约分最简分式 (C语言)
- 也许你所知道的学习方法都是错的
- RLC协议简单理解1-RLC报文格式
- JSON快速转C#实体类
- 删除计算机系学生的选课记录6,天津理工大学+数据库实验二.doc
- 相约转型新范式,第四范式2021发布会报名开启
- vForum 2011 Beijing现场图文播报一
- 因云而生,全新视角看阿里云服务器硬件方升架构
- 阿里P7架构师要求:Web核心+开源框架+大型网站架构!含面试题目!
- 2021年度最佳开源软件榜单出炉!
- [转载]apache rewrite规则
- 三维曲线图的绘制方法大全
- excel VBA编程番外篇(字典+正则表达式+FSO)-曾贤志-专题视频课程
- 扫描全能王?原来图像技术可以这样子玩
- selenium模拟登录163邮箱,定位账号及密码输入框问题和iframe嵌套
- openlayers4+中台风路径播放优化
- 二叉树的先序遍历(C++)
- RGCN - Modeling Relational Data with Graph Convolutional Networks 使用图卷积网络对关系数据进行建模 ESWC 2018
热门文章
- Mongodb 与sql 语句对照
- 泛型那点儿事儿 泛型概述 简单样例代码
- 我要去三清山国家公园。。。
- GitHub 标星 1.6w+,我发现了一个宝藏项目,推荐大家学习
- BlockChain:区块链入门课程 -- 区块链之类型 、应用程序、技术挑战和潜力
- #Tomcat# 本地正常但是部署到服务器后,mysql插入中文乱码问题解决!
- 【Liunx】Linux vi/vim 教程
- C#设计模式之18-备忘录模式
- php 三元预算? :_项目预算:一种反模式
- mysql 不显示消息错误_如何编写不吸的错误消息