二叉搜索树: Binary Search Tree
一棵二叉树,可以为空;如果不为空,满足以下性质:
- 非空左子树的所有键值小于其根节点的键值。
- 非空右子树的所有键值大于其根节点的键值。
- 左、右子树都是二叉搜索树。
find操作:
Position Find(int x, BinTree BST)
{
if(!BST) return NULL;
if(x > BST->Data)
return Find(x, BST->Right);
else if(x < BST->Data)
return Find(x, BST->Left);
else
return BST;
}
删除操作:
找到要删除的位置,然后取左子树的最小或右子树的最大元素填充删除结点,再删除最小或者最大结点。