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
    }
}
相关推荐
QiLinkOS11 小时前
第三视觉理解徐玉生与他的商业活动(28)
大数据·c++·人工智能·算法·开源协议
码云数智-大飞11 小时前
从 OC 平滑迁移 Swift 完整方案
职场和发展·蓝桥杯
wabs66611 小时前
关于动态规划【力扣1143.最长公共子序列的思考】
算法·leetcode·动态规划
剑挑星河月12 小时前
54.螺旋矩阵
java·算法·leetcode·矩阵
Robot_Nav12 小时前
MPPI 局部规划器实验设计讲解
人工智能·算法·mppi
mingo_敏12 小时前
Mean-Teacher 均值教师自训练框架详解
算法·均值算法
水木流年追梦13 小时前
agent面试必备31- AI Agent 核心进阶:工具路由(Tool Routing)
数据库·人工智能·oracle·面试·职场和发展·embedding
星空露珠13 小时前
迷你世界UGc3.0脚本Wiki[剧情动画模块管理接口 Timeline]
开发语言·数据结构·算法·游戏·lua
笨笨没好名字13 小时前
Leetcode刷题python3版第一周(下)
linux·算法·leetcode
jinyishu_13 小时前
常见排序算法详解
数据结构·算法·排序算法