Erlo

二叉搜索树的最小绝对差值-503

2024-11-30 12:29:23 发布   59 浏览  
页面报错/反馈
收藏 点赞

题目描述

给你一个二叉搜索树的根节点 root ,返回 树中任意两不同节点值之间的最小差值 。
差值是一个正数,其数值等于两值之差的绝对值。

解题思路

我们这里采用一个result值作为我们最后的返回值,同时使用pre存储我们的前一个遍历的节点,因为二叉搜索树的最小绝对差值只能是存在与我们两个相邻的节点之间,所以这里我们采用中序遍历的方式,遍历的结果就是有序的

实例代码

class Solution {

    private int result=Integer.MAX_VALUE;
    TreeNode pre=null;

    public int getMinimumDifference(TreeNode root) {
        foreach(root);
        return result;
    }

    public void foreach(TreeNode node){
        if(node==null){
            return;
        }
        foreach(node.left);
        
        if(pre==null){
            pre=node;
        }else{
            if(Math.abs(node.val-pre.val)

登录查看全部

参与评论

评论留言

还没有评论留言,赶紧来抢楼吧~~

手机查看

返回顶部

给这篇文章打个标签吧~

棒极了 糟糕透顶 好文章 PHP JAVA JS 小程序 Python SEO MySql 确认