LeetCode.530. 二叉搜索树的最小绝对差

530. 二叉搜索树的最小绝对差

难度:easy

LeetCode.530. 二叉搜索树的最小绝对差_第1张图片

 LeetCode.530. 二叉搜索树的最小绝对差_第2张图片

 LeetCode.530. 二叉搜索树的最小绝对差_第3张图片

思路同98. 验证二叉搜索树,通过中序遍历转化成数组,再取最小差即可;

class Solution {
    private int result = Integer.MAX_VALUE;
    // 记录前一个节点
    private int pre = -1; 

    public void traverse(TreeNode root) {
        if (root == null) {
            return;
        }
        traverse(root.left);
        // 如果是中序遍历后的第一个节点,则不做abs
        if (pre != -1) {
            result = Math.min(result, Math.abs(pre - root.val));
        }     
        pre = root.val;
        traverse(root.right);
    }
    public int getMinimumDifference(TreeNode root) {
        traverse(root);
        return result;
    }
}

你可能感兴趣的:(LeetCode,#,DFS/BFS,#,二叉树,leetcode,算法,职场和发展)