注册 登录
编程论坛 数据结构与算法

这个递归的返回值好奇怪。。

L苍琰 发布于 2015-07-15 08:58, 2043 次点击
int chazhao(BSTNode * b,KeyType temp){
  if(b==NULL){
    printf("%d不在二叉树中\n",temp);
    return 0;
  }
  else{
    if(temp==b->key){
      printf("%d在二叉树中\n",temp);
      return 1;
    }
    else if(temp<b->key){
      chazhao(b->lchild,temp);
    }
    else{
      chazhao(b->rchild,temp);
    }
  }
}

然后我们
      printf("%d",chazhao(b,h));
得到的是-1??
不是0和1其中一种吗?求解
1 回复
#2
林月儿2015-07-21 09:51
函数适用于顺序二叉树,你的二叉树b打头的根结点是顺序二叉树吗?
1