二叉搜索树中的插入与二叉树中的插入
Insertion in Binary Search Tree vs Insertion in Binary Tree
二叉搜索树(BST)和二叉树(BT)的插入有什么区别?我知道在 BST 中,你将新节点的值与根进行比较,如果较小,则将其添加到其左侧,如果较大,则将其添加到根的右侧。 BT的流程是一样的吗?如果不是,插拔是按照什么程序进行的?
根据 left/right,您不限于将子节点 <= 或 >= 到父节点。
只要每个节点最多有 2 个子节点,就可以将它们放在任何地方。
看来你对BT和BST的定义有误解。
首先你要知道BT和BST的区别
- Binary Tree是一棵树,其节点最多有2 children。
将 children 存储到左侧或右侧分支并不取决于 children 值。
- Binary Search Tree是二叉树,其中每个节点的childrens按照特定的顺序存储。 Children 小于 parent
节点通常存储在左侧分支,大于或等于右侧。
回答您的问题:
- 在二叉树中插入你需要跟踪每个节点没有
超过2children。换句话说,要将元素添加到二叉树,您只需将它作为 child 添加到任何小于 2 children.
的节点
- 在搜索二叉树中插入你需要跟踪 children 以特定顺序存储(child 小于 parent 在左边,大于或等于在左边右)和 parent 最多 2 children.
二叉搜索树(BST)和二叉树(BT)的插入有什么区别?我知道在 BST 中,你将新节点的值与根进行比较,如果较小,则将其添加到其左侧,如果较大,则将其添加到根的右侧。 BT的流程是一样的吗?如果不是,插拔是按照什么程序进行的?
根据 left/right,您不限于将子节点 <= 或 >= 到父节点。
只要每个节点最多有 2 个子节点,就可以将它们放在任何地方。
看来你对BT和BST的定义有误解。 首先你要知道BT和BST的区别
- Binary Tree是一棵树,其节点最多有2 children。 将 children 存储到左侧或右侧分支并不取决于 children 值。
- Binary Search Tree是二叉树,其中每个节点的childrens按照特定的顺序存储。 Children 小于 parent 节点通常存储在左侧分支,大于或等于右侧。
回答您的问题:
- 在二叉树中插入你需要跟踪每个节点没有 超过2children。换句话说,要将元素添加到二叉树,您只需将它作为 child 添加到任何小于 2 children. 的节点
- 在搜索二叉树中插入你需要跟踪 children 以特定顺序存储(child 小于 parent 在左边,大于或等于在左边右)和 parent 最多 2 children.