题目链接:力扣

思路:

中序遍历

二叉搜索树中序遍历是递增序列,要找最小绝对差,就是要找按照中序遍历,后一个数-前一个数的最小值

1.用vector数组保存中序遍历序列


class Solution {
public:vector<int>res;void inorder(TreeNode *root){if(root==NULL){return ;}inorder(root->left);res.push_back(root->val);inorder(root->right);}int getMinimumDifference(TreeNode* root) {
inorder(root);
int mini=100000;
for(int i=0;i<res.size()-1;i++)
{mini=min(res[i+1]-res[i],mini);
}
return mini;}
};

2.用pre指针保存上一个节点


class Solution {
public:int mini=100000;TreeNode *pre;void inorder(TreeNode *root){if(root==NULL){return ;}inorder(root->left);if(pre!=NULL){mini=min(mini,root->val-pre->val);}pre=root;inorder(root->right);}int getMinimumDifference(TreeNode* root) {
inorder(root);return mini;}
};

LeetCode 530二叉搜索树的最小绝对差相关推荐

  1. leetcode 530. 二叉搜索树的最小绝对差(Java版)

    题目 https://leetcode-cn.com/problems/minimum-absolute-difference-in-bst/ 题解 中序遍历法. 本题要求二叉搜索树任意两节点差的绝对 ...

  2. leetcode 530. 二叉搜索树的最小绝对差(中序遍历)

    给你一棵所有节点为非负值的二叉搜索树,请你计算树中任意两节点的差的绝对值的最小值.示例:输入:1\3/2输出: 1解释: 最小绝对差为 1,其中 2 和 1 的差的绝对值为 1(或者 2 和 3). ...

  3. LeetCode 530. 二叉搜索树的最小绝对差 思考分析

    目录 题目 思路1:递归遍历得到result数组(单调递增),然后对数组进行前后差分,取最小值 思路2:不用数组,进行优化 思路3.回顾迭代法求解 题目 给你一棵所有节点为非负值的二叉搜索树,请你计算 ...

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

    530. 二叉搜索树的最小绝对差 Ideas 前几天一直刷链表题,这道题刚看到的时候还有点懵,第一个想到的方法竟然是全排列,脑子瓦特了. 二叉树的题目基本上都得跟(前/中/后)序遍历扯点关系,一看是没 ...

  5. Suzy找到实习了吗 Day 21 | 二叉树进行中:530. 二叉搜索树的最小绝对差,501. 二叉搜索树中的众数,236. 二叉树的最近公共祖先

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

  6. LeetCode 530二叉搜索树的最小绝对值差-简单

    给你一棵所有节点为非负值的二叉搜索树,请你计算树中任意两节点的差的绝对值的最小值. 示例: 输入: 1\3/2 输出: 1 解释: 最小绝对差为 1,其中 2 和 1 的差的绝对值为 1(或者 2 和 ...

  7. leetcode系列-530. 二叉搜索树的最小绝对差

    题目描述:给你一个二叉搜索树的根节点 root ,返回 树中任意两不同节点值之间的最小差值 . 差值是一个正数,其数值等于两值之差的绝对值. 示例 1: 输入:root = [4,2,6,1,3] 输 ...

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

    给定一个所有节点为非负值的二叉搜索树,求树中任意两节点的差的绝对值的最小值. 示例 : 输入:1\3/2输出: 1解释: 最小绝对差为1,其中 2 和 1 的差的绝对值为 1(或者 2 和 3). 注 ...

  9. 怎样将树的中序遍历的数输入到一个数组中_LeetCode 530.二叉搜索树的最小绝对差

    题目 给你一棵所有节点为非负值的二叉搜索树,请你计算树中任意两节点的差的绝对值的最小值. 提示: + 树中至少有 2 个节点. + 本题与783相同 题目链接 示例 输入:13/2输出: 1 题目分析 ...

最新文章

  1. 为方便ATS管理建立的一些命令别名
  2. 【 MATLAB 】DFT的性质讨论(二)序列的循环移位及其 MATLAB 实现(时域方法)
  3. 西安python培训班多少钱-西安python培训多少钱?
  4. 13个风格独特的关于页面(About Pages)设计
  5. ajax实现二级联动
  6. 【spring cloud zookeeper】KeeperErrorCode = Unimplemented for
  7. 【简便解法】1084 外观数列 (20分)_24行代码AC
  8. python控制树莓派gpioled,Python 控制树莓派 GPIO 输出:控制 LED 灯
  9. Java集合(一、HashMap)
  10. 网络协议:TCP/IP协议,你看懂了吗?
  11. Windows2003环境下的一键系统安全
  12. python django 基本测试 及调试 201812
  13. python + pyqt5 自制exe 随机换壁纸
  14. 如何与其他用户共享SkyBell HD访问
  15. Objective-C学习资源
  16. 学术大咖教你一个轻松在论文中画出漂亮插图的方法
  17. python 删除文件、清空目录的方法总结
  18. 蓝奏云第三方cmd客户端(LanZouCloud-CMD)Cookie内容设置方法
  19. python学习 - 图标签用宋体Times New Roman字体 + 规范的混淆矩阵绘制
  20. 人际交往中的谈话技巧

热门文章

  1. jquery proxy delegate 的比较
  2. HDU2026 首字母变大写【文本处理】
  3. UVA474 Heads / Tails Probability【数学】
  4. UVA11760 Brother Arif, Please feed us!【bitset】
  5. JSK-5 矩阵翻转【入门】
  6. matlab 警告(warning)、错误(error)、异常(exception)与断言(assert)
  7. R 语言的学习 —— 环境准备与安装
  8. utilities(matlab)—— 多元函数的数值梯度
  9. 机器学习基础(四十八)—— 概率
  10. pycharm和python一样吗_PyCharm中Directory与Python package的区别