📅  最后修改于: 2020-12-23 01:05:39             🧑  作者: Mango
二进制搜索树具有以下属性:左侧节点的值小于指向该节点的节点,右侧节点的值大于指向该节点的节点。
“二分搜索树”中的节点不必指向其值紧随其后的节点。
示例:图中显示的树是二叉搜索树。
插入二叉搜索树:考虑一个二叉树T。假设我们给T插入了一个ITEM信息。该ITEM作为叶子插入到树中。以下步骤说明了在二进制搜索树T中插入ITEM的过程。
示例:将3、1、4、6、9、2、5、7插入最初为空的二进制搜索树后,显示二进制搜索树。
解决方案:在空的二进制搜索树中插入以上节点如图所示:
二进制搜索树中的删除:考虑一个二进制树T。假设我们要从二进制搜索树中删除给定的ITEM。为了从二叉搜索树中删除一个ITEM,我们有3种情况,这取决于被删除节点的子节点数。
示例:显示删除根节点后,图(viii)中显示的二叉树。
解决方案:要删除根节点,请首先用根中最接近的元素替换根节点。为此,请先向左移动一个步骤,然后再向右移一个尽可能远的位置,然后删除替换的节点。删除后的树如图: