二叉排序树(Binary Sort Tree)的查找递归算法

二叉排序树的查找是从根结点开始,沿着某一个分支逐层开始往下比较的过程。

若二叉排序树非空,将给定值与根结点的关键字比较,若相等则查找成功。

若不等,则当根结点的关键字大于给定关键字值时,在根结点的左子树中查找,否则在根结点右子树中查找。

递归调用查找函数,直到返回为找到的结点,或者为空结束。

 

BSTNode *BST_Search(BiTree T,ElemType key)
//查找函数返回指向关键字值为key的结点指针,若不存在,返回NULL
{ if(null==T)
return null;//当为空说明不存在data为key的结点
if(key==t->data)
return T;//当key为这data的时候就返回这个结点
if(key< T->data)//当这个值key<该结点的data就传入右孩子和key
return BST_Search(T->lchild,key);
else{//当这个值key>该结点的data就传入右孩子和key
return  BST_Search(T->rchild,key);
}
}

 

 

 

 

 

    原文作者:查找算法
    原文地址: https://blog.csdn.net/zhangvalue/article/details/76652287
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞