LeetCode 530二叉搜索树的最小绝对差
题目链接:力扣
思路:
中序遍历
二叉搜索树中序遍历是递增序列,要找最小绝对差,就是要找按照中序遍历,后一个数-前一个数的最小值
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二叉搜索树的最小绝对差相关推荐
- leetcode 530. 二叉搜索树的最小绝对差(Java版)
题目 https://leetcode-cn.com/problems/minimum-absolute-difference-in-bst/ 题解 中序遍历法. 本题要求二叉搜索树任意两节点差的绝对 ...
- leetcode 530. 二叉搜索树的最小绝对差(中序遍历)
给你一棵所有节点为非负值的二叉搜索树,请你计算树中任意两节点的差的绝对值的最小值.示例:输入:1\3/2输出: 1解释: 最小绝对差为 1,其中 2 和 1 的差的绝对值为 1(或者 2 和 3). ...
- LeetCode 530. 二叉搜索树的最小绝对差 思考分析
目录 题目 思路1:递归遍历得到result数组(单调递增),然后对数组进行前后差分,取最小值 思路2:不用数组,进行优化 思路3.回顾迭代法求解 题目 给你一棵所有节点为非负值的二叉搜索树,请你计算 ...
- LeetCode Algorithm 530. 二叉搜索树的最小绝对差
530. 二叉搜索树的最小绝对差 Ideas 前几天一直刷链表题,这道题刚看到的时候还有点懵,第一个想到的方法竟然是全排列,脑子瓦特了. 二叉树的题目基本上都得跟(前/中/后)序遍历扯点关系,一看是没 ...
- Suzy找到实习了吗 Day 21 | 二叉树进行中:530. 二叉搜索树的最小绝对差,501. 二叉搜索树中的众数,236. 二叉树的最近公共祖先
530. 二叉搜索树的最小绝对差 题目 给你一个二叉搜索树的根节点 root ,返回 树中任意两不同节点值之间的最小差值 .差值是一个正数,其数值等于两值之差的绝对值. solution # Defi ...
- LeetCode 530二叉搜索树的最小绝对值差-简单
给你一棵所有节点为非负值的二叉搜索树,请你计算树中任意两节点的差的绝对值的最小值. 示例: 输入: 1\3/2 输出: 1 解释: 最小绝对差为 1,其中 2 和 1 的差的绝对值为 1(或者 2 和 ...
- leetcode系列-530. 二叉搜索树的最小绝对差
题目描述:给你一个二叉搜索树的根节点 root ,返回 树中任意两不同节点值之间的最小差值 . 差值是一个正数,其数值等于两值之差的绝对值. 示例 1: 输入:root = [4,2,6,1,3] 输 ...
- 530. 二叉搜索树的最小绝对差
给定一个所有节点为非负值的二叉搜索树,求树中任意两节点的差的绝对值的最小值. 示例 : 输入:1\3/2输出: 1解释: 最小绝对差为1,其中 2 和 1 的差的绝对值为 1(或者 2 和 3). 注 ...
- 怎样将树的中序遍历的数输入到一个数组中_LeetCode 530.二叉搜索树的最小绝对差
题目 给你一棵所有节点为非负值的二叉搜索树,请你计算树中任意两节点的差的绝对值的最小值. 提示: + 树中至少有 2 个节点. + 本题与783相同 题目链接 示例 输入:13/2输出: 1 题目分析 ...
最新文章
- 云原生生态周报 Vol. 16 | CNCF 归档 rkt,容器运行时“上古”之战老兵凋零
- 数据存储之 SQLite 数据库操作(三)
- C/C++之大端模式和小端模式
- 【Django】django使用原生SQL的方法(附加说说为什么ORM上不了大台面)
- Solidity 简易教程0x001
- Java在程序设计题目中的妙用
- mysql 存储过程 条件_如何在MySQL存储过程中正确实现条件?
- 基于PHPCMS的SQL注入(Havij)
- mysql not null 索引_MySQL中 IS NULL、IS NOT NULL、!= 能用上索引吗?
- 手机同步查看html,手机版同步html几点注意使用
- Houdini14:动画入门
- 在Novell NetWare中支持IP
- MacBook Pro 设置Finder显示隐藏文件
- kali安装小企鹅输入法
- php1050r210,parkerPARKESL parker维修PARKEROP-ETCATparker油管PARKESLV压力传感器
- 诺亚方舟售票系统V4版本了
- 闭关之 C++ 函数式编程笔记(五):系统设计和程序测试
- 大数据入门看哪些书比较好
- 路由器交换机软件测试,你真的懂集线器、交换机、路由器之间的区别吗?
- hudi mor表数据ro和rt表问题 rt更新数据表无法使用count