节点的结构
typedef struct BTNode{
char c;
struct BTNode *lchild,*rchild;
};
算法
char road[100];
int top_road=-1;
//在祖先树中找结点
BTNodeptr find_node(BTNodeptr np,char c){
BTNodeptr result=NULL;
if(np){
road[++top_road]=np->c;
if(np->c==c){
road[++top_road]='\0';
result=np;
}
else{
result=find_node(np->lchild,c);
if(result==NULL)
result=find_node(np->rchild,c);
}
if(result==NULL)
top_road--;
}
return result;
}