leetcode —— 783. 二叉搜索树结点最小距离
给定一个二叉搜索树的根结点 root,返回树中任意两节点的差的最小值。
解题思路:使用二叉搜索树的性质,因为题目是要寻找任意两个节点的差的最小值,因此可以通过中序遍历找到差的最小值。
其Python代码如下:
# Definition for a binary tree node.
# class TreeNode:
# def __init__(self, x):
# self.val = x
# self.left = None
# self.right = Noneclass Solution:def __init__(self):self.min_num = float("inf") # 用于保存当前的最小差值self.num = -100 # 用于保存中序遍历的上一个节点值def minDiffInBST(self, root: TreeNode) -> int:if root.left:self.minDiffInBST(root.left) # 递归self.min_num = min(self.min_num,root.val-self.num) # 最小值进行更新self.num = root.val # 当前值的上一个值进行更新if root.right: # 递归self.minDiffInBST(root.right)return self.min_num
leetcode —— 783. 二叉搜索树结点最小距离相关推荐
- LeetCode 783. 二叉搜索树结点最小距离(中序遍历)
1. 题目 给定一个二叉搜索树的根结点 root, 返回树中任意两节点的差的最小值. 示例:输入: root = [4,2,6,1,3,null,null] 输出: 1 解释: 注意,root是树结点 ...
- leetcode - 783. 二叉搜索树结点最小距离
给定一个二叉搜索树的根结点 root, 返回树中任意两节点的差的最小值. 示例: 注意: 二叉树的大小范围在 2 到 100. 二叉树总是有效的,每个节点的值都是整数,且不重复. ------ 解题思 ...
- LeetCode 783二叉搜索树节点最小距离-简单
给你一个二叉搜索树的根节点 root ,返回 树中任意两不同节点值之间的最小差值 . 示例 1: 输入:root = [4,2,6,1,3] 输出:1 示例 2: 输入:root = [1,0,48, ...
- 【每日一算法】二叉搜索树结点最小距离
微信改版,加星标不迷路! 每日一算法-二叉搜索树节点最小距离 作者:阿广 阅读目录 1 题目 2 解析 1 题目 给定一个二叉搜索树的根结点 root, 返回树中任意两节点的差的最小值. 示例: 输入 ...
- LeetCode(783)——二叉搜索树结点最小距离(JavaScript)
给定一个二叉搜索树的根结点 root, 返回树中任意两节点的差的最小值. 示例1: 输入: root = [4,2,6,1,3,null,null] 输出: 1 解释: 注意,root是树结点对象(T ...
- 783. 二叉搜索树节点最小距离
题目 方法一 转数组 题目给出的数据是放在二叉搜索树中.二叉搜索树的中序遍历的结果是从小到大排列的. 用中序遍历二叉搜索树,得到从小到大排好序的数组 比较排序好的素组两两间的差值 class Solu ...
- 783. 二叉搜索树节点最小距离(dfs)
给你一个二叉搜索树的根节点 root ,返回 树中任意两不同节点值之间的最小差值 . 注意:本题与 530:https://leetcode-cn.com/problems/minimum-absol ...
- leetcode 235. 二叉搜索树的最近公共祖先(Java版,树形dp套路)
题目 原题地址:leetcode 235. 二叉搜索树的最近公共祖先 说明: 所有节点的值都是唯一的. p.q 为不同节点且均存在于给定的二叉搜索树中. 题解 关于 树形dp 套路,可以参考我的另一篇 ...
- leetcode 530. 二叉搜索树的最小绝对差(Java版)
题目 https://leetcode-cn.com/problems/minimum-absolute-difference-in-bst/ 题解 中序遍历法. 本题要求二叉搜索树任意两节点差的绝对 ...
最新文章
- jenkins 添加 证书凭证Credentials
- 中石油训练赛 - sciorz画画(区间dp)
- Java条件查询分页——总结
- Android—RxJava库知识
- ssm使用全注解实现增删改查案例——mybatis-config.xml
- 什么是跨域?跨域如何解决
- group by 的实现原理
- ZOJ-3704 I am Nexus Master! 模拟
- Java多线程学习十二: synchronized的工作原理 以及背后的“monitor 锁”
- php word 图片无法显示,Word文档不显示图片解决方法
- laravel完全安装手册
- android tracert命令详解,Tracert命令详解
- 五种常用的3D建模方式,各有什么优缺点?
- Linux如何自定义屏幕分辨率,Linux手动设置屏幕分辨率的办法
- Pytorch错误:RuntimeError: invalid argument 0: Sizes of tensors must match except in dimension 1. Got 6
- RAW 图像格式转换工具 bayer2rgb
- 手脱ASPack2.12壳(练习)
- 20、斐⽒数列是公元13世纪数学家斐波拉契发明的。即: 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, ……, 输出其前15项。
- 风水大师 or 企业医生?张明明谈数据分析师的职业之路
- IDEA 文件夹颜色对目录的影响分析