Leetcode每日一题:530.minimum-absolute-difference-in-bst(二叉搜索树的最小绝对值)
思路:根据二叉搜索树的中序遍历是递增的这一性质,我们只需列出中序遍历的结果,并遍历一遍便可得到最小绝对值,或者在中序遍历的过程中,min{now-pre,res}
进行比较;
void dfs(TreeNode* root, int& pre, int& ans) {if (root == nullptr) {return;}dfs(root->left, pre, ans);if (pre == -1) { pre = root->val; //遍历到最左侧的节点时,将pre值初始化,此时pre代表整个二叉搜索树中的最小值} else { //将当前值与pre值做差与ans作比较,更新pre值ans = min(ans, root->val - pre); //因为当前值都比pre值大(中序遍历递增),所以不用加绝对值pre = root->val;}dfs(root->right, pre, ans);}int getMinimumDifference(TreeNode* root) {int ans = INT_MAX, pre = -1;dfs(root, pre, ans);return ans;}
Leetcode每日一题:530.minimum-absolute-difference-in-bst(二叉搜索树的最小绝对值)相关推荐
- 530.Minimum Absolute Difference in BST 二叉搜索树中的最小差的绝对值
[抄题]: Given a binary search tree with non-negative values, find the minimum absolute difference betw ...
- LeetCode Algorithm 530. 二叉搜索树的最小绝对差
530. 二叉搜索树的最小绝对差 Ideas 前几天一直刷链表题,这道题刚看到的时候还有点懵,第一个想到的方法竟然是全排列,脑子瓦特了. 二叉树的题目基本上都得跟(前/中/后)序遍历扯点关系,一看是没 ...
- Suzy找到实习了吗 Day 21 | 二叉树进行中:530. 二叉搜索树的最小绝对差,501. 二叉搜索树中的众数,236. 二叉树的最近公共祖先
530. 二叉搜索树的最小绝对差 题目 给你一个二叉搜索树的根节点 root ,返回 树中任意两不同节点值之间的最小差值 .差值是一个正数,其数值等于两值之差的绝对值. solution # Defi ...
- C#LeetCode刷题之#530-二叉搜索树的最小绝对差(Minimum Absolute Difference in BST)
问题 该文章的最新版本已迁移至个人博客[比特飞],单击链接 https://www.byteflying.com/archives/4123 访问. 给定一个所有节点为非负值的二叉搜索树,求树中任意两 ...
- LeetCode简单题之二叉搜索树的最小绝对差/最小距离
题目 给你一个二叉搜索树的根节点 root ,返回 树中任意两不同节点值之间的最小差值 . 差值是一个正数,其数值等于两值之差的绝对值. 示例 1: 输入:root = [4,2,6,1,3] 输出: ...
- leetcode 530. 二叉搜索树的最小绝对差(Java版)
题目 https://leetcode-cn.com/problems/minimum-absolute-difference-in-bst/ 题解 中序遍历法. 本题要求二叉搜索树任意两节点差的绝对 ...
- LeetCode 530. 二叉搜索树的最小绝对差 思考分析
目录 题目 思路1:递归遍历得到result数组(单调递增),然后对数组进行前后差分,取最小值 思路2:不用数组,进行优化 思路3.回顾迭代法求解 题目 给你一棵所有节点为非负值的二叉搜索树,请你计算 ...
- gorm preload 搜索_LeetCode刷题笔记|95:不同的二叉搜索树 II
题目描述 给定一个整数 n,生成所有由 1 ... n 为节点所组成的 二叉搜索树 . 示例 输入:3 输出: [ [1,null,3,2], [3,2,null,1], [3,1,null,null ...
- LeetCode每日一题 530. 二叉搜索树的最小绝对差
题目链接 思路 利用二叉树的性质遍历取相邻数字差的最小值. class Solution {public:int ret;TreeNode* left;int getMinimumDifference ...
最新文章
- windows 下xampp集成环境安装mongodb扩展
- java简单通讯录的实现02person类_Java中Math类的简单介绍
- Python实现字符串反转的6种方法
- 如何用python批量处理图片大小_python批量修改图片大小的方法
- C# DataSet性能最佳实践
- beanutil 批量copy_BeanUtils.copyProperties 需要getset方法支持
- shell if多个条件判断_萌新关于Excel VBA中IF条件判断语句的一点心得体会
- 联想x250为什么这么贵_外媒:联想笔记本thinkpadX250如何联想thinkpadX250价格及评价...
- 音视频开发(42)---H.264 SVC 简介
- Spring Boot 2.x 多数据源配置之 JPA 篇
- php yield 个人小解_PHP中的性能优化利器:生成器 yield 理解
- InVEST模型(生态系统服务)
- TTL转RS232电平转换电路及工作原理
- UMG笔记——关于UMG 的一些基础知识和动画的实现
- 【纯干货】Vue仿蘑菇街商城项目(vue+koa+mongodb)X
- 最新友价T5仿虚拟交易商城网站源码+PHP内核
- unity3D 点击按钮 播放音频
- 解决 WebStorm 很卡的问题
- C语言程序设计案例式教程
- 电化学传感器使用-电子学角度分析