2015-10-19 150 views
1

插入二叉搜索树(BST)和二叉树(BT)有什么区别?我知道在BST中,您将新节点的值与根进行比较,如果更小,则将其添加到其左侧,如果更大,则将其添加到根的右侧。对于BT来说是否是同样的程序?如果不是,插入和移除的过程如何?插入二进制搜索树vs二叉树插入

+0

你也许在问一个简单的二叉搜索树和一个*平衡的*二叉搜索树之间的区别吗?平衡二叉树具有更复杂的插入,以防止退化情况,其中根据插入节点的顺序,部分树比其他部分更深。 –

回答

1

看起来你对BT和BST防御有误解。首先你需要知道BT和BST的区别。

  • 二叉树是一棵树,该节点最多有2个孩子。 将孩子存放在左边或右边的分支并不取决于孩子的价值。
  • 二叉搜索树是一个二叉树,其中每个节点的儿童都按特定的顺序存储。 小于父母的子女 节点通常存储在左侧分支上,大于或等于右侧。

回答你的问题:

  • 将在二叉树你需要跟踪每个节点都有不 超过2名儿童。换句话说,要将元素添加到二叉树中,只需将其作为子项添加到少于2个子节点的任何节点。
  • 在搜索二元树中插入,您需要跟踪孩子以特定顺序存储(孩子小于父母,孩子小于或等于孩子)并且父母至多有2个孩子。
0

根据左/右,您并不限制有子女< =或> =到父节点。

只要每个节点最多有2个孩子,就放在任何地方。