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

寻一能人帮忙解决问题

刘剑龙 发布于 2010-05-20 19:13, 493 次点击
中序遍历二叉树,并将其线索化中,怎样实现最后一个结点的线索化?

void InThreading(BiThrTree p)
{
  if(p){
          InThreading(p->lchild);//左子树线索化
          if(!p->lchild){p->LTag=Thread; p->lchild =pre;}//前驱线索
          if(!pre->rchild) {pre->RTag =Thread;  pre->rchild=p;}//后继线索
          pre = p;                                  //保持pre指向p的前驱
          InThreading(p->rchild);                  //右子树线索化
         }
}//InThreading
能否能帮忙解释一下,最好能做个流程图,谢谢先!
2 回复
#2
2010-05-21 05:51
这个好像没什么的吧,最后的结点和前面的一样啊,只不过如果右子树若为空,那线索化后还指向空啊,就像单链表最后一个元素一样吧。
#3
2010-05-22 18:33
将两个子树组成一个子树的时候,子树a可以使左子树,这是子树b就是右子树,但子树a也可以是右子树,懂?
1