You are given the root node of a binary search tree (BST) and a value to insert into the tree. Return the root node of the BST after the insertion. It is guaranteed that the new value does not exist in the original BST.
Notice that there may exist multiple valid ways for the insertion, as long as the tree remains a BST after insertion. You can return any of them.
Example 1:
Input: root = [4,2,7,1,3], val = 5 Output: [4,2,7,1,3,5] Explanation: Another accepted tree is:Example 2:
Input: root = [40,20,60,10,30,50,70], val = 25 Output: [40,20,60,10,30,50,70,null,null,25]Example 3:
Input: root = [4,2,7,1,3,null,null,null,null,null,null], val = 5 Output: [4,2,7,1,3,5]Constraints:
The number of nodes in the tree will be in the range [0, 104].-108 <= Node.val <= 108All the values Node.val are unique.-108 <= val <= 108It’s guaranteed that val does not exist in the original BST.题目的意思是:二叉搜索树插入一个节点,这道题是一个medium题目,我以为会比较难,后面发现写出来的递归代码很简洁,所以我简单的实现了一下,如果当前节点为空,则创建一个节点并返回;如果不是,则根据val的大小向左或者向右递归;最后返回root就行了。