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

简介: 【LeetCode 41】530.二叉搜索树的最小绝对差

一、题意

二、思考过程

在对二叉搜索树进行中序遍历的过程中,我们可以直接找到相邻两个节点的差值------用一个 pre节点记录 cur节点的前一个节点。

  • cur:当前节点
  • pre:当前节点的前一个节点

class Solution {
public:
    int result=INT_MAX;
    TreeNode* pre;
    void traversal(TreeNode* cur)
    {
        if(cur==NULL) return;
        traversal(cur->left);//左
        if(pre!=NULL)//中
        {
            result=min(result,cur->val-pre->val);
        }
        pre=cur;//记录前一个节点的指针
        traversal(cur->right);//右
    }
    int getMinimumDifference(TreeNode* root) {
        traversal(root);
        return result;
    }
};


目录
相关文章
|
机器学习/深度学习 存储 算法
LeetCode 题目 95:从递归到动态规划实现 不同的二叉搜索树 II
LeetCode 题目 95:从递归到动态规划实现 不同的二叉搜索树 II
【LeetCode 45】701.二叉搜索树中的插入操作
【LeetCode 45】701.二叉搜索树中的插入操作
133 1
【LeetCode 44】235.二叉搜索树的最近公共祖先
【LeetCode 44】235.二叉搜索树的最近公共祖先
154 1
|
Python
【Leetcode刷题Python】450. 删除二叉搜索树中的节点
LeetCode上538号问题"把二叉搜索树转换为累加树"的Python实现,使用反向中序遍历并记录节点值之和来更新每个节点的新值。
190 4
【Leetcode刷题Python】450. 删除二叉搜索树中的节点
|
Python
【Leetcode刷题Python】96. 不同的二叉搜索树
LeetCode 96题 "不同的二叉搜索树" 的Python解决方案,使用动态规划算法计算由1至n互不相同节点值组成的二叉搜索树的种数。
157 3
【Leetcode刷题Python】96. 不同的二叉搜索树
LeetCode第96题不同的二叉搜索树
文章介绍了LeetCode第96题"不同的二叉搜索树"的解法,利用动态规划的思想和递推公式,通过计算以任意节点为根的不同二叉搜索树的数量,解决了该问题。
LeetCode第96题不同的二叉搜索树
|
算法 Python
【Leetcode刷题Python】剑指 Offer 33. 二叉搜索树的后序遍历序列
本文提供了一种Python算法,用以判断给定整数数组是否为某二叉搜索树的后序遍历结果,通过识别根节点并递归验证左右子树的值是否满足二叉搜索树的性质。
165 3
【LeetCode 48】108.将有序数组转换为二叉搜索树
【LeetCode 48】108.将有序数组转换为二叉搜索树
163 0
【LeetCode 47】669.修剪二叉搜索树
【LeetCode 47】669.修剪二叉搜索树
102 0
【LeetCode 46】450.删除二叉搜索树的节点
【LeetCode 46】450.删除二叉搜索树的节点
197 0