梦应逍遥 发表于 2024-11-30 11:39:12

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

题目描述

给你一个二叉搜刮树的根节点 root ,返回 树中任意两差异节点值之间的最小差值 。
差值是一个正数,其数值等于两值之差的绝对值。
https://img2024.cnblogs.com/blog/3492570/202411/3492570-20241130105144012-1738663536.png
解题思路

我们这里采用一个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)
页: [1]
查看完整版本: 二叉搜刮树的最小绝对差值-503