Java实现 LeetCode 530 二叉搜索树的最小绝对差(遍历树)
2023-09-14 08:58:04 时间
530. 二叉搜索树的最小绝对差
给你一棵所有节点为非负值的二叉搜索树,请你计算树中任意两节点的差的绝对值的最小值。
示例:
输入:
1
\
3
/
2
输出:
1
解释:
最小绝对差为 1,其中 2 和 1 的差的绝对值为 1(或者 2 和 3)。
PS:
递归遍历
/**
* Definition for a binary tree node.
* public class TreeNode {
* int val;
* TreeNode left;
* TreeNode right;
* TreeNode(int x) { val = x; }
* }
*/
class Solution {
private int result = Integer.MAX_VALUE; private TreeNode preNode = null;
public int getMinimumDifference(TreeNode root) {
getMin(root);
return result;
}
private void getMin(TreeNode root){
if(root == null){
return;
}
getMin(root.left);
if(preNode != null)
{
result = Math.min(Math.abs(root.val - preNode.val), result);
}
preNode = root;
getMin(root.right);
}
}
相关文章
- Java面试题之并行和并发有什么区别?
- Java-GUI编程之Swing组件
- java queue toarray_Java PriorityBlockingQueue toArray()用法及代码示例
- java怎么输出保留两位小数_剖析Java输出怎么保留两位小数「建议收藏」
- java单例模式——详解JAVA单例模式及8种实现方式
- java怎么运行_怎样启动JAVA?「建议收藏」
- java和基岩版区别_我的世界基岩版与Java版有什么区别?「建议收藏」
- java启动器_JAVA基础:Java 启动器如何查找类
- 【说站】java短路逻辑运算符是什么
- 【说站】java泛型接口怎么用
- 【说站】java变量的初始化
- java的栈内存和堆内存_Java本地方法栈
- vscode配置java环境变量_vscode java环境
- java控制流程语句while
- java并发编程(1):Java多线程-基本线程类-基础知识复习笔记
- 将CSV文件导进MySQL表格的Java示例详解数据库
- 使用Java连接Linux服务器的简单方法(java连接linux)
- 解锁Java 与 Oracle 的连接之门(java连接oracle)
- 缓存Redis与Java实现有效的过期缓存(redisjava过期)
- 处理Redis与Java实现高效过期处理(redisjava过期)
- 使用Java实现Redis数据存储(redis集成java)
- Java 关闭 Redis 连接的指南(java关闭redis)
- Java 异步编程导论
- Java面试中的Redis题目剖析(java面试题redis)
- _home让Linux下Java更有效:更新Java_Home(linux更改java)
- 如何在Linux系统中安装Java(linux中安装java)
- 通往成功的道路通过Java考证Oracle获取更高的成就(java考证oracle)
- 语句Java自动生成Oracle数据库查询语句(java生成oracle)
- 编程玩转Java之Oracle编程实战(java中的oracle)
- 利用Java实现zip压缩/解压缩
- 基于序列化存取实现java对象深度克隆的方法详解
- Java4Android开发教程(三)java基本概念
- java中enum的用法