701 二叉搜尋樹中的插入操作

2021-10-24 19:38:14 字數 773 閱讀 9163

給定二叉搜尋樹(bst)的根節點和要插入樹中的值,將值插入二叉搜尋樹。 返回插入後二叉搜尋樹的根節點。 輸入資料保證,新值和原始二叉搜尋樹中的任意節點值都不同。

注意,可能存在多種有效的插入方式,只要樹在插入後仍保持為二叉搜尋樹即可。 你可以返回任意有效的結果。

例如, 

給定二叉搜尋樹:

4/ \

2 7

/ \1 3

和 插入的值: 5

你可以返回這個二叉搜尋樹:

4/   \

2      7

/ \     /

1   3 5

或者這個樹也是有效的:

5/ \

2    7

/ \

1   3

\4

分析:方法一:遞迴(通過遞迴 更改左右子樹,bst樹的特質,順序的,左邊小,右邊大)

**:

public treenode insertintobst(treenode root, int val) 

if(root.val < val)else

return root;

}

方法二:迭代,每次判斷一下,當前節點 和 操作節點的關係,再往下做

public treenode insertintobst(treenode root, int val)  else 

} else else }}

}

701 二叉搜尋樹中的插入操作

給定二叉搜尋樹 bst 的根節點和要插入樹中的值,將值插入二叉搜尋樹。返回插入後二叉搜尋樹的根節點。保證原始二叉搜尋樹中不存在新值。注意,可能存在多種有效的插入方式,只要樹在插入後仍保持為二叉搜尋樹即可。你可以返回任意有效的結果。例如,給定二叉搜尋樹 4 2 7 1 3 和 插入的值 5 你可以返回...

701 二叉搜尋樹中的插入操作

題目描述 給定二叉搜尋樹 bst 的根節點和要插入樹中的值,將值插入二叉搜尋樹。返回插入後二叉搜尋樹的根節點。輸入資料保證,新值和原始二叉搜尋樹中的任意節點值都不同。注意,可能存在多種有效的插入方式,只要樹在插入後仍保持為二叉搜尋樹即可。你可以返回任意有效的結果。例如,給定二叉搜尋樹 4 2 7 1...

701 二叉搜尋樹中的插入操作

二叉搜尋樹本身有序,因此無需遍歷整棵樹,插入位置根據當前節點和val的大小關係可以判斷出接下來往哪走 通過遞迴函式返回值完成新加入節點的父子關係賦值操作,下一層將加入節點返回,本層用root left或者root right將其接住 treenode insertintobst treenode r...