当前位置: 首页 > news >正文

leetcode699-修剪二叉搜索树

leetcode 699
在这里插入图片描述

思路

本题可能存在左节点值 < low但是左节点的右子树仍然>low的情况,还可能存在右节点值 > high 但是右节点的左子树仍然 < high的情况,所以当我们判断出当前root不在[low,high]区间的时候,还需要对子树进行递归,以确保满足条件的子树不被修剪
在这里插入图片描述

实现

var trimBST = function (root, low, high) {
    if (!root) return null;
    if (root.val < low) {
        // 右子树是大于当前节点的,所以可能右子树会满足,需要进行递归
        return trimBST(root.right, low, high)
    } else if (root.val > high) {
    	// 左子树是小于当前节点的,所以可能左子树满足范围,需要进行递归
        return trimBST(root.left, low, high)
    }
    root.left = trimBST(root.left, low, high)
    root.right = trimBST(root.right, low, high)
    return root;
};

相关文章:

  • Agent:大模型中的智能“函数”
  • 【Vue3入门1】02- vue3的基本操作(上)
  • 【商城实战(57)】商城数据迁移与升级实战:开启电商新征程
  • 算法|2025最强优化算法
  • Linux用户组管理深度解析
  • 练习:运动计划
  • C++继承机制:从基础到避坑详细解说
  • 学习Stable Diffusion
  • 深度解读DeepSeek:源码解读 DeepSeek-V3
  • 动态规划-基础
  • ESP8266 RTOS SDK 使用make命令编译出现Permission denied问题的解决方法
  • Ubuntu 14.10 Desktop (i386):经典 32 位操作系统的回顾与指南(附安装包)
  • 基于yolov11的防震锤缺陷检测系统python源码+pytorch模型+评估指标曲线+精美GUI界面
  • WSL 环境桥接与雷达通信配置笔记
  • APM 仿真遥控指南
  • 音频录制小妙招-自制工具-借助浏览器录一段单声道16000采样率wav格式音频
  • ARM架构薄记2——ARM学习架构抓手(以ARMv7为例子)
  • 元音辅音及其字母组合发音
  • 基于STM32进行FFT滤波
  • Python 常用内建模块-urllib
  • “三德子”赵亮直播间卖“德子土鸡”,外包装商标实为“德子土”
  • 司法部:加快研究制定行政执法监督条例,建立完善涉企行政执法监督长效机制
  • 云南一男子酒后经常殴打七旬母亲,被警方拘14日罚600元
  • 甘肃省政府原党组成员、副省长杨子兴被提起公诉
  • “五一”假期国内出游3.14亿人次,国内游客出游总花费1802.69亿元
  • 上海今日降雨降温,节后首个工作日气温回升最高可达28℃