此用于在二叉搜索树中搜索值的代码无法完全运行。
struct 节点具有 int 数据和 struct *lc,*rc 作为其成员。
这*r
是一个结构节点类型的全局变量。
struct node * searchbt(struct node*bn,int x)
{ if(bn==NULL)
{printf("Element not found.\n");}
if(bn->data==x) {printf("Element found.\n"); r=bn; return r;}
if(bn->data<x) {searchbt((bn->lc),x);}
else {searchbt((bn->rc),x);}
}
此搜索代码编译但在运行时无法搜索正常运行的 BST 的任何元素。程序应返回指向找到的节点的指针。