线索二叉树 当以二叉链表作为存储结构时,只能找到结点的左右孩子的信息,而不能直接得到结点在任一序列的前驱与后继信息,这种信息只有在遍历的动态过程中才能得到,为了能保存所需的信息,可增加标志域; 其中:0 lchild 域指示结点的左孩子ltag 1 lchild 域指示结点的前驱0 rchild 域指示结点的右孩子rtag 1 rchild 域指示结点的后继以这种结构构成的二叉链表作为二叉树的存储结构,叫做线索链表,其中指向结点前驱与后继的指针叫做线索.加上线索的二叉树称之为线索二叉树 lchild ltag data rtag rchild 线索二叉树 二叉树的二叉线索存储表示:Typedef enumLink,ThreadPointerTag; //Link0:指针,Thread1:线索 Typedef struct BiThrNodeTelemType data; struct BiTreeNode *lchild,*rchild;PointerTag LTag, Rtag; BiTreeNode,*BiThrTree; 模仿线性表的存储结构,在二叉树的线索链表上也添加一个头结点,令其lchild域的指针指向二叉树的根结点,其rchild域的指针指向中序遍历时访问的最后一个结点;同时,令二叉树中序序列中的第一个结点lchi
原创力文档

文档评论(0)