欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 文旅 > 旅游 > Leetcode 701-二叉搜索树中的插入操作

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

2024/10/24 5:18:32 来源:https://blog.csdn.net/Helene1996/article/details/142147414  浏览:    关键词:Leetcode 701-二叉搜索树中的插入操作

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

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

题解

如何找到二叉搜索树的插入位置?
插入后要使得插入后的二叉树的中序序列为递增,可以不考虑题目中提示所说的改变树的结构的插入方式,只要按照二叉搜索树的规则去遍历,遇到空节点就插入节点就可以了。
–>小于根则往左子树找,大于根则往右子树找

1.终止条件:遇到空节点,此时可以插入,并将插入节点的值返回。return new TreeNode(val)
2.本层操作:往左走或往右走,根据插入元素的数值,决定递归方向,本层用root->left或者root->right将下一层节点接住
3.递归没有终止,本层需返回root节点给上一层

class Solution {public TreeNode insertIntoBST(TreeNode root, int val) { //终止条件if(root==null) return new TreeNode(val);//向右子树递归,并且用root.right接住递归返回值if(root.val>val) root.left=insertIntoBST(root.left,val);else root.right=insertIntoBST(root.right,val);//归没有终止,本层需返回root节点给上一层return root;}
}

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com