当前位置: 代码迷 >> 综合 >> 【LeetCode】二叉搜索树的最小绝对差
  详细解决方案

【LeetCode】二叉搜索树的最小绝对差

热度:73   发布时间:2024-01-25 15:59:08.0

给定一个所有节点为非负值的二叉搜索树,求树中任意两节点的差的绝对值的最小值。

示例 :

输入:

   1
\
3
/
2

输出:
1

解释:
最小绝对差为1,其中 2 和 1 的差的绝对值为 1(或者 2 和 3)。

/*** Definition for a binary tree node.* public class TreeNode {*     int val;*     TreeNode left;*     TreeNode right;*     TreeNode(int x) { val = x; }* }*/
class Solution {int num = Integer.MAX_VALUE;TreeNode pre = null;public int getMinimumDifference(TreeNode root) {inOrder(root);return num;}public void inOrder(TreeNode root){if(root == null){return ;}inOrder(root.left);if(pre!=null){num = Math.min(num, root.val - pre.val);}pre = root;inOrder(root.right);}
}