2024-11-27
483 字
2 分钟
修剪二叉搜索树
题目
给定一个二叉搜索树,同时给定最小边界low和最大边界 high。通过修剪二叉搜索树,使得所有节点的值在[low, high]中(high>=low) 。你可能需要改变树的根节点,所以结果应当返回修剪好的二叉搜索树的新的根节点。
示例1
输入:root = [1,0,2], low = 1, high = 2
输出:[1,null,2]
示例2
输入:root = [3,0,4,null,2,null,null,1], low = 1, high = 3
输出:[3,2,null,1]
《代码随想录》算法视频公开课
力扣题目链接
思路
题目所给二叉树为搜索二
2024-11-27
705 字
2 分钟
删除二叉搜索树中的节点
题目
给定一个二叉搜索树的根节点root和一个值key,删除二叉搜索树中的key对应的节点,并保证二叉搜索树的性质不变。返回二叉搜索树(有可能被更新)的根节点的引用。
《代码随想录》算法视频公开课
力扣题目链接
示例1
输入:root = [5,3,6,2,4,null,7], key = 3
输出:[5,4,6,2,null,null,7]
解释:给定需要删除的节点值是 3,所以我们首先找到 3 这个节点,然后删除它
图示
示例2
输入: root = [5,3,6,2,4,null,7], key = 0
输出: [5,3,6,2,4,null,7]
解释: 二叉树不包含值为 0
2024-11-26
599 字
2 分钟
二叉搜索树中的插入操作
题目
给定二叉搜索树BST的根节点和要插入树中的值,将值插入二叉搜索树。 返回插入后二叉搜索树的根节点。
输入数据保证,新值和原始二叉搜索树中的任意节点值都不同。
示例1
输入:root = [40,20,60,10,30,50,70], val = 25
输出:[40,20,60,10,30,50,70,null,null,25]
示例2
输入:root = [4,2,7,1,3,null,null,null,null,null,null], val = 5
输出:[4,2,7,1,3,5]
提示
给定的树上的节点数介于 0 和 10^4 之间
每个节点都有一个唯一整