LeetCode百题【验证二叉搜索树】
题目描述
给你一个二叉树的根节点 root
,判断其是否是一个有效的二叉搜索树。
有效 二叉搜索树定义如下:
- 节点的左子树只包含 小于 当前节点的数。
- 节点的右子树只包含 大于 当前节点的数。
- 所有左子树和右子树自身必须也是二叉搜索树。
示例 1:
1 |
|
示例 2:
1 |
|
提示:
- 树中节点数目范围在
[1, 10^4]
内 -2^31 <= Node.val <= 2^31 - 1
解法
- 递归
- 对于一个二叉树节点来说
- 它大于它的左子树的所有节点
- 它小于它右子树的所有节点
- 也就是说当前节点的值是左子树的一个上届
- 也就是说当前节点的值是右子树的一个下届
- 也就是说当前节点的值是左子树的一个上届
1 |
|
- 时间复杂度:O(n)
来源:力扣(LeetCode)
链接:98. 验证二叉搜索树 - 力扣(LeetCode)
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 漫漫长夜!