[LeetCode98]98. Validate Binary Search Tree判断二叉搜索树
2024-10-18 17:52:33
判断二叉搜索树的方法是:
中序遍历形成递增序列
//全局变量记录中序遍历产生的序列,因为要递归,所以要用全局变量
List<Integer> list = new ArrayList<>();
public boolean isValidBST(TreeNode root) {
/*
这里要注意二叉搜索树的左子树的每个节点都要小于根节点,不只是左孩子,右子树也同样,
常犯的一个错误就是只是判断了左孩子和右孩子
正确方法是:中序遍历法,中序遍历之后的结果是一个递增序列
判断是否是二叉搜索树的方法是:中序遍历法,记住
*/
if (root==null) return true;
inOrder(root);
for (int i = 1; i < list.size(); i++) {
if (list.get(i)<=list.get(i-1))
return false;
}
return true;
}
void inOrder(TreeNode root){
if (root==null)
return;
inOrder(root.left);
list.add(root.val);
inOrder(root.right);
}
最新文章
- H5案例分享:JS手势框架 —— Hammer.js
- poj[2104]K-th Number
- HDU 4454 Stealing a Cake(枚举角度)
- 横向滑动的HorizontalListView滑动指定位置的解决方法
- Visual Studio 文件没发布出来
- Blitz Templates介绍
- Nginx开启gzip压缩功能
- Android - 广播机制和Service
- Delphi结构中使用String时遇到的内存泄露问题(没有利用String的引用计数自动销毁字符串的功能)
- Hibernate框架--对象的状态,缓存, 映射
- 速成制作rpm包
- readSerializableObj
- python_协程方式操作数据库
- 【NOIP2016TG】solution
- Java中Semaphore(信号量)的使用
- 3. React 组件生命周期介绍
- org.apache.ibatis.binding.BindingException: Invalid bound statement (not found): com.shen.mapper.UserMapper.findById
- 2019浙大校赛--G--Postman(简单思维题)
- 解决Docker容器时区不一致的问题
- 使用openpyxl的styles,实现写入值时加背景色
热门文章
- SpringBoot中的Tomcat是如何启动的?
- 5.1 Spring5源码--Spring AOP源码分析一
- PyQt(Python+Qt)学习随笔:窗口layout布局的SizeConstraint和部件的大小约束策略sizePolicy不起作用的问题
- 第3章 Python的数据类型目录
- 缩减项目代码中的大面积if策略
- C#声明一个100大小的数组 随机生成1-100之间不重复的数
- 网络QoS的平衡之道——音视频弱网对抗策略介绍
- tcp/ip原理/三次握手/四次挥手
- Reflect个人记录
- docker redis 设置和使用