530/783. 二叉搜索树的最小绝对差(简单)
给你一棵所有节点为非负值的二叉搜索树,请你计算树中任意两节点的差的绝对值的最小值。
示例:
输入:
1
3
/
2
输出:
1
解释:
最小绝对差为 1,其中 2 和 1 的差的绝对值为 1(或者 2 和 3)。
来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/minimum-absolute-difference-in-bst
思路:
中序遍历的相邻两个节点的值相差最小的
代码1:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
| class Solution { TreeNode pre = null; int min = Integer.MAX_VALUE; public int getMinimumDifference(TreeNode root) {
inorder(root); return min; } public void inorder(TreeNode root){ if(root==null){ return; } inorder(root.left); if(pre!=null){ min = Math.min(min,root.val-pre.val); } pre = root; inorder(root.right); } }
|