給定二叉搜尋樹(bst)的根節點和要插入樹中的值,將值插入二叉搜尋樹。 返回插入後二叉搜尋樹的根節點。 保證原始二叉搜尋樹中不存在新值。
注意,可能存在多種有效的插入方式,只要樹在插入後仍保持為二叉搜尋樹即可。 你可以返回任意有效的結果。
例如,
給定二叉搜尋樹:
4/ \
2 7
/ \1 3
和 插入的值: 5
你可以返回這個二叉搜尋樹:
4/ \
2 7
/ \ /
1 3 5
或者這個樹也是有效的:
5/ \
2 7
/ \
1 3\4
通過次數18,502提交次數25,535
/**
* definition for a binary tree node.
* function treenode(val, left, right)
*//**
* @param root
* @param val
* @return
*/var insertintobst = function(root, val)
// 比根節點大,說明在右子樹
if(root.val < val) root.right = insertintobst(root.right, val);
// 比根節點小,說明在左子樹
if(root.val > val) root.left = insertintobst(root.left, val);
return root;
};
701 二叉搜尋樹中的插入操作
給定二叉搜尋樹 bst 的根節點和要插入樹中的值,將值插入二叉搜尋樹。返回插入後二叉搜尋樹的根節點。保證原始二叉搜尋樹中不存在新值。注意,可能存在多種有效的插入方式,只要樹在插入後仍保持為二叉搜尋樹即可。你可以返回任意有效的結果。例如,給定二叉搜尋樹 4 2 7 1 3 和 插入的值 5 你可以返回...
701 二叉搜尋樹中的插入操作
題目描述 給定二叉搜尋樹 bst 的根節點和要插入樹中的值,將值插入二叉搜尋樹。返回插入後二叉搜尋樹的根節點。輸入資料保證,新值和原始二叉搜尋樹中的任意節點值都不同。注意,可能存在多種有效的插入方式,只要樹在插入後仍保持為二叉搜尋樹即可。你可以返回任意有效的結果。例如,給定二叉搜尋樹 4 2 7 1...
701 二叉搜尋樹中的插入操作
二叉搜尋樹本身有序,因此無需遍歷整棵樹,插入位置根據當前節點和val的大小關係可以判斷出接下來往哪走 通過遞迴函式返回值完成新加入節點的父子關係賦值操作,下一層將加入節點返回,本層用root left或者root right將其接住 treenode insertintobst treenode r...