LeetCode Java刷题笔记—701. 二叉搜索树中的插入操作

Posted 刘Java

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了LeetCode Java刷题笔记—701. 二叉搜索树中的插入操作相关的知识,希望对你有一定的参考价值。

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

给定二叉搜索树(BST)的根节点和要插入树中的值,将值插入二叉搜索树。 返回插入后二叉搜索树的根节点。 输入数据保证新值和原始二叉搜索树中的任意节点值都不同。注意,可能存在多种有效的插入方式,只要树在插入后仍保持为二叉搜索树即可。 你可以返回任意有效的结果 。

中等难度。根据二叉搜索树的特性,通过递归二分查找的方式找到新节点的位置,然后新建节点,随后原路返回即可,实际难度不因该是中等的额。

public TreeNode insertIntoBST( TreeNode root, int val )
   //递归到最底部,以给定值为val新建Node返回
   if( root == null )
      return new TreeNode( val );
   
   int rootVal = root.val;
   //比较,查找val节点所在的位置
   if( rootVal < val )
      root.right = insertIntoBST( root.right, val );
   
   else
      root.left = insertIntoBST( root.left, val );
   
   //返回root
   return root;

以上是关于LeetCode Java刷题笔记—701. 二叉搜索树中的插入操作的主要内容,如果未能解决你的问题,请参考以下文章

[JavaScript 刷题] 树 - 二叉搜索树中的插入操作, leetcode 701

Leetcode刷题100天—701. 二叉搜索树中的插入操作( 二叉树)—day34

Leetcode刷题100天—701. 二叉搜索树中的插入操作( 二叉树)—day34

LeetCode Java刷题笔记—226. 翻转二叉树

LeetCode Java刷题笔记—111. 二叉树的最小深度

LeetCode Java刷题笔记—101. 对称二叉树