二叉搜索树--新增节点-力扣 701 题

例题细节二叉搜索树的基础操作-CSDN博客也讲过了(put),下面给出递归实现

java 复制代码
public TreeNode insertIntoBST(TreeNode node, int val) {
    //找到空位了
    if(node == null) {
        return new TreeNode(val);
    }
    if(val < node.val) {
        //一直找到有null的位置时就新增节点
        node.left = insertIntoBST(node.left, val);//将新创建好的新节点与父节点建立联系
    } else if(node.val < val) {
        node.right = insertIntoBST(node.right, val);
    }
    return node;
}
//这个递归的缺点:多出一些不必要的赋值动作,来时的所有节点又要在重新建立父子关系  如果要用非递归实现就不会有这种情况
  • 注意事项与上题相同,不再赘述

  • 题目提示输入的 val 一定与树中节点不同,因此只需考虑新增 情况,不会出现更新情况

相关推荐
随风丶飘12 小时前
DeepSeek TUI 让后端告别窗口切来切去
java·ai编程
罗超驿12 小时前
14.MySQL索引底层原理:从数据结构到B+树的深度解析
数据结构·b树·mysql
孬甭_12 小时前
单链表详解
c语言·数据结构
khalil102012 小时前
代码随想录算法训练营Day-53 图论01 | 110.字符串接龙、105.有向图的完全可达性、106.岛屿的周长
算法
中国胖子风清扬12 小时前
PageIndex:用推理替代向量的下一代 RAG 架构
java·spring boot·python·spring·ai·embedding·rag
IronMurphy12 小时前
【算法四十六】300. 最长递增子序列
算法
带刺的坐椅12 小时前
Solon Flow 实战:用 50 行 YAML 实现一个请假审批流(含中断恢复、并行网关、条件分支)
java·solon·工作流·审批流·流程编排
张二娃同学12 小时前
02_C语言数据类型_整型浮点型字符型一次讲清楚
android·java·c语言
程序猿乐锅12 小时前
【Tilas|第九篇】登录认证功能实现
java·笔记·tlias
optimistic_chen12 小时前
【AI Agent 全栈开发】RAG(检索增强生成)
java·linux·运维·人工智能·ai编程·rag