当前位置: 首页 > 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;}

相关文章:

  • 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 随手记
  • 遇冰雹天气,西安机场新航站楼成“水帘洞”
  • 国家主席习近平同普京总统共见记者
  • 商务部再回应中美经贸高层会谈
  • 昆廷·斯金纳:作为“独立自主”的自由
  • 黄仁勋:中国AI市场将达500亿美元,美国企业若无法参与是巨大损失
  • 甘怀真:天下是神域,不是全世界