一、定义
二叉排序树(Binary Sort Tree)或是一棵空树,或满足下列性质的一棵非空的二叉树T:
- 如果T的左子树非空,则左子树所有结点值小于T的根值;
- 如果T的右子树非空,则右子树所有结点值大于T的根值;
- T的左子树和右子树均为二叉排序树。
二、查找关键字
(1)算法思想
(2)实现
typeof struct BTNode
{
int key;
struct BTNode *lchild;
struct BTNode *rchild;
}BTNode;
BTNode * BSTsearch(BTNode *bt,int key)
{
if(bt==NULL)
return NULL;
else
{
if(bt->key==key