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

代码随想录——修建二叉搜素树(Leetcode669)

题目链接
在这里插入图片描述

递归

/*** Definition for a binary tree node.* public class TreeNode {*     int val;*     TreeNode left;*     TreeNode right;*     TreeNode() {}*     TreeNode(int val) { this.val = val; }*     TreeNode(int val, TreeNode left, TreeNode right) {*         this.val = val;*         this.left = left;*         this.right = right;*     }* }*/
class Solution {public TreeNode trimBST(TreeNode root, int low, int high) {// 检查传入的 root 是否为 null。如果是,则说明树为空,直接返回 null。if(root == null){return null;}// 如果 root 的值小于范围下限 low,那么这个节点以及它的左子树中的所有节点都不在范围内。// 因此,递归地对右子树进行修剪(即删除小于 low 的节点),并返回修剪后的右子树的根节点。if(root.val < low){TreeNode right = trimBST(root.right, low, high);return right;}// 如果 root 的值大于范围上限 high,那么这个节点以及它的右子树中的所有节点都不在范围内。// 因此,递归地对左子树进行修剪(即删除大于 high 的节点),并返回修剪后的左子树的根节点。if(root.val > high){TreeNode left = trimBST(root.left, low, high);return left;}// 递归地对 root 的左右子节点进行修剪。即使 root 的值在范围内,它的子节点可能不在范围内,所以需要分别对左右子节点进行相同的修剪过程。root.left = trimBST(root.left, low, high);root.right = trimBST(root.right, low, high);// 最后,在完成所有必要的修剪后,返回 root 节点。return root;}
}
http://www.lryc.cn/news/366718.html

相关文章:

  • EasyExcel导出多个sheet封装
  • 【Python错误】:AttributeError: ‘generator‘ object has no attribute ‘next‘解决办法
  • 如何配置Feign以实现服务调试
  • pc之间的相互通信详解
  • Mongodb中字段的删除
  • TP8 PHP 动态变量调用 (new $class())->$action($data)
  • 理解JVM内存模型与Java内存模型(JMM)
  • 鸿蒙OS初识
  • 发布自己的 npm 插件包:步骤与最佳实践
  • BubbleML: A Multiphase Multiphysics Dataset and Benchmarks for Machine Learning
  • vscode+latex设置跳转快捷键
  • PHP序列化、反序列化
  • websocket链接携带参数
  • 【C++进阶】深入STL之list:模拟实现深入理解List与迭代器
  • 技术管理之巅—如何从零打造高质效互联网技术团队阅读体验
  • 机器学习与数据挖掘知识点总结(一)
  • 行心科技中禄松波携手,开启智能健康新时代
  • 前端多人项目开发中,如何保证CSS样式不冲突?
  • 【YOLOv10改进[CONV]】使用DualConv二次创新C2f模块实现轻量化 + 含全部代码和详细修改方式 + 手撕结构图 + 全网首发
  • 基于SSM+Jsp的高校信息资源共享平台
  • 软件测试--Linux快速入门
  • module ‘django_cas_ng.views‘ has no attribute ‘login‘
  • CW32F030K8T7单片机在即热式热水器的应用介绍
  • HTML静态网页成品作业(HTML+CSS)—— 美食湘菜介绍网页(5个页面)
  • 使用redis构建简单的社交网站
  • 【Java面试】九、微服务篇-SpringCloud(上)
  • Python 树状数组
  • 【QEMU中文手册】2.2 调用方式(持续更新中)
  • (函数)判断一句话中最长的单词(C语言)
  • QT5.5.0中使用lambda表达式时遇到的问题