首页 > 其他分享 >刷刷刷 Day 22 | 701. 二叉搜索树中的插入操作

刷刷刷 Day 22 | 701. 二叉搜索树中的插入操作

时间:2023-01-25 21:44:58浏览次数:61  
标签:val 22 树中 701 二叉 插入 搜索 root

701. 二叉搜索树中的插入操作

LeetCode题目要求

给定二叉搜索树(BST)的根节点 root 和要插入树中的值 value ,将值插入二叉搜索树。 返回插入后二叉搜索树的根节点。 输入数据 保证 ,新值和原始二叉搜索树中的任意节点值都不同。

注意,可能存在多种有效的插入方式,只要树在插入后仍保持为二叉搜索树即可。 你可以返回 任意有效的结果

图

示例

输入:root = [4,2,7,1,3], val = 5
输出:[4,2,7,1,3,5]  图1 满足要求
另外 图2 也满足要求
解题思路

利用二叉搜索树的特性,通过判断插入元素值与节点值大小,确定在左子树还是右子树
且题目提到有多少结构,那么最简单的就是按二叉搜索树规则直接放值到空节点即可

上代码

class Solution {
    public TreeNode insertIntoBST(TreeNode root, int val) {
        // 在二叉搜索树中插入一个元素,根据插入数与 节点值判断,应该插入到那个位置,在左子树还是右子树
        if (root == null) {
            return new TreeNode(val);
        }
        
        // 右子树
        if (root.val < val) {
            root.right = insertIntoBST(root.right, val);
        } else {
            root.left = insertIntoBST(root.left, val);
        }
        return root;
    }
}
重难点

理解二叉搜索树的特性,直接插入空节点即可,重构二叉树结构的情况可以暂不考虑

附:学习资料链接

标签:val,22,树中,701,二叉,插入,搜索,root
From: https://www.cnblogs.com/blacksonny/p/17067330.html

相关文章

  • Windows 11 v22000.318 11月更新版
    Windows11商业版(含教育版、企业版、专业版、专业教育版、专业工作站版)SHA-256:08FB80412CF7239D7135066A6D4EA604359DBCCBAF481C51EEE08749D81590AEed2k://|file|zh-cn......
  • 刷刷刷 Day 22 | 235. 二叉搜索树的最近公共祖先
    235.二叉搜索树的最近公共祖先LeetCode题目要求给定一个二叉搜索树,找到该树中两个指定节点的最近公共祖先。百度百科中最近公共祖先的定义为:“对于有根树T的两个结......
  • 2022前端年底面试总结
    又到年底了,很多小伙伴又开始​​跳槽​​​了,本次汇总都是​​面试真题​​​,来自各位小伙伴有​​大厂​​​也有​​小厂​​​,还有​​外包​​可以说很全面了。某外包公......
  • USACO2022 OPEN【杂题】
    A.[USACO22OPEN]262144RevisitedP对于一个长为\(m\)的序列\(b\),如下定义其权值:对其进行\(m-1\)次操作,每次选择相邻的两个数合并,合并后将其替换为一个大于两数最......
  • 刷刷刷 Day 21 | 501. 二叉搜索树中的众数
    501.二叉搜索树中的众数LeetCode题目要求给你一个含重复值的二叉搜索树(BST)的根节点root,找出并返回BST中的所有众数(即,出现频率最高的元素)。如果树中有不止一个众数......
  • Codeforces Round #822 (Div. 2) D
    链接:https://codeforces.com/problemset/problem/1734/E题意,给定n,b[1~n],求一个nn矩阵,满足a[i][i]=b[i],且对于r1<r2,c1<c2,a[r1][c1]+a[r2][c2]!=a[r1][c2]+a[r2][c1](m......
  • 2022ISCTF Crypto wp
    ISCTFCryptowp1.这是什么古典玩意题目:Theflagis:ISCTF{part1_part2_part3}example:part1:aaapart2:bbbpart3:!@#flag:ISCTF{aaa_bbb_!@#}-----------------......
  • 【ARIXV2209】Multi-Scale Attention Network for Single Image Super-Resolution
    【ARIXV2209】Multi-ScaleAttentionNetworkforSingleImageSuper-Resolution代码:https://github.com/icandle/MAN这是来自南开大学的工作,将多尺度机制与大核注意机......
  • 刷刷刷 Day 20 | 700. 二叉搜索树中的搜索
    700.二叉搜索树中的搜索LeetCode题目要求给定二叉搜索树(BST)的根节点 root 和一个整数值 val。你需要在BST中找到节点值等于 val 的节点。返回以该节点为根的子......
  • 数据结构 玩转数据结构 9-6 线段树中的更新操作
    0课程地址https://coding.imooc.com/lesson/207.html#mid=13848 1重点关注1.1线段树中的更新操作见3.1  2课程内容  3......