LeetCode【701】二叉搜索数的插入操作

题目:

思路:

https://zhuanlan.zhihu.com/p/272781596

代码:

java 复制代码
class Solution {
    public TreeNode insertIntoBST(TreeNode root, int val) {
         return process(root,val);   
    }
		//递归
    public TreeNode process(TreeNode root,int val){
    	//base case  来到null 位置,创建出节点
        if(root == null){
            return new TreeNode(val);
        }
        //寻找创建的位置,
        if(root.val > val){
            root.left = process(root.left,val);

        }
         //寻找创建的位置,
        if(root.val < val){
            root.right = process(root.right,val);
        }
        return root;    // 这里是精妙之处,其实遍历的过程中,返回了root,对于普通节点,入传入的root.left,返回仍然是root.left
    }
}
相关推荐
kaikaile19951 分钟前
MATLAB 灰度图像的二维傅里叶变换
算法·计算机视觉·matlab
仰泳的熊猫8 分钟前
1112 Stucked Keyboard
数据结构·c++·算法·pat考试
roman_日积跬步-终至千里12 分钟前
【计算机算法与设计(14)】例题五:最小生成树:Prim算法详细解释:π的含义、更新逻辑和选点原因
算法
让学习成为一种生活方式13 分钟前
压缩文件夹下下所有文件成压缩包tar.gz--随笔016
算法
嗷嗷哦润橘_19 分钟前
AI Agent学习:MetaGPT项目之RAG
人工智能·python·学习·算法·deepseek
不忘不弃37 分钟前
指针元素的使用
算法
he___H39 分钟前
滑动窗口一题
java·数据结构·算法·滑动窗口
AI科技星40 分钟前
统一场论质量定义方程:数学验证与应用分析
开发语言·数据结构·经验分享·线性代数·算法
ULTRA??41 分钟前
KD-Tree的查询原理
python·算法
jianfeng_zhu1 小时前
不带头节点的链式存储实现链栈
数据结构·算法