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

二叉搜索树的插入操作(递归遍历)

 701. 二叉搜索树中的插入操作 - 力扣(LeetCode)

class Solution {
public:TreeNode* insertIntoBST(TreeNode* root, int val) {if(root==NULL){TreeNode*node=new TreeNode(val);return node;}if(val<root->val){root->left=insertIntoBST(root->left,val);}if(val>root->val){root->right=insertIntoBST(root->right,val);}return root;}
};

由于二叉搜索树本身的性质,在进行插入节点的时候,可以将节点都同意插入到叶子节点上。

从根节点开始向下遍历,如果遍历到的节点值大于目标值,则向左子树遍历;如果遍历到的节点值小于目标值,则向右子树遍历。

终止条件判断:如果遍历到的节点为空,说明遍历到的上一层节点为叶子节点,所以要将目标值定义成新节点再返回给上一层的那个节点,在最后返回的结果才能完整。

        if(root==NULL){TreeNode*node=new TreeNode(val);return node;}

http://www.dtcms.com/a/178703.html

相关文章:

  • C语言 指针(9)
  • 动态SQL与静态SQL
  • 10.王道_HTTP
  • 【AI论文】FlexiAct:在异构场景中实现灵活的动作控制
  • Spring Boot 实现验证码生成与校验:从零开始构建安全登录系统
  • 并发与并行的关系
  • 如何防止域名DNS被劫持?
  • 【Go】优化文件下载处理:从多级复制到零拷贝流式处理
  • 极狐GitLab 容器镜像仓库功能介绍
  • 电池分压电阻检测不准的原因
  • AI日报 · 2025年5月08日|Stripe发布全球首个支付AI基础模型
  • 山东136号文实施方案与竞价细则
  • Ubuntu18.04 设置开机服务自启
  • 关于ubuntu下交叉编译arrch64下的gtsam报错问题,boost中boost_regex.so中连接libicui18n.so.55报错的问题
  • 移植easylogger通过J-Linker的RTT输出日志/Ozone的RTT设置
  • sui在windows虚拟化子系统Ubuntu和纯windows下的安装和使用
  • 【嵌入式开发-USB】
  • RabbitMQ--基础篇
  • Crawl4AI:高效的开源 Python 网页爬取与数据提取库
  • 【5G通信】redcap和bwp 随手记
  • 论文速读《DARE:基于扩散模型的自主机器人探索新范式》
  • debian12 安装docker
  • 多模态大语言模型arxiv论文略读(六十四)
  • 美团二面:使用分布式调度框架该考虑哪些问题?
  • 【Java ee 初阶】文件IO和操作(下)
  • 【Java ee 初阶】文件操作和IO(上)
  • 企业级可观测性实现:OpenObserve云原生平台的本地化部署与远程访问解析
  • COLT_CMDB_linux_userInfo_20250508.sh修复历史脚本输出指标信息中userName与输出信息不一致问题
  • 解构语言模型推理过程,超越最终答案:通过分析子思考路径提升大语言模型推理准确性的方法研究
  • Python3正则表达式:字符串魔法师的指南[特殊字符]‍♂️