zoukankan      html  css  js  c++  java
  • 530. Minimum Absolute Difference in BST

    Given a binary search tree with non-negative values, find the minimum absolute difference between values of any two nodes.
    Example:

    Input:
    
       1
        
         3
        /
       2
    
    Output:
    1
    
    Explanation:
    The minimum absolute difference is 1, which is the difference between 2 and 1 (or between 2 and 3).
    

    题目要求找到二叉搜索树中,节点之间最小的差值。我们知道二叉搜索树的中序遍历为有序的,最小的差值就出现在相邻元素之间的差值。

    class Solution {
        int min = Integer.MAX_VALUE;
        Integer prev = null; //记录前一个节点,可以定义为TreeNode
        public int getMinimumDifference(TreeNode root) {
            if(root == null) return min;
            getMinimumDifference(root.left);
            if(prev != null)
                min = Math.min(min,root.val - prev);
            prev = root.val;
            getMinimumDifference(root.right);
            return min;
        }
    }
    
  • 相关阅读:
    搞一个先试试
    java map排序
    文件上传
    文件下载
    Filter过滤器
    java编写一个简单的验证码
    centos7安装mysql
    linux安装jdk,tomcat服务器
    DBUtil工具类
    mysql
  • 原文地址:https://www.cnblogs.com/wxshi/p/7625359.html
Copyright © 2011-2022 走看看