给你一棵所有节点为非负值的二叉搜索树,请你计算树中任意两节点的差的绝对值的最小值。示例:输入: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 pree=-1,ress=Integer.MAX_VALUE;public int getMinimumDifference(TreeNode root) {MinimumDifference(root);return ress;}public void MinimumDifference(TreeNode root) {if(root==null) return;MinimumDifference(root.left);//中序遍历if(pree!=-1) ress=Math.min(ress, Math.abs(root.val-pree));pree=root.val;//记录前一个值MinimumDifference(root.right);}
}