第386章 裙子
设一棵二叉树有n个结点,则有n-1条边(指针连线),而n个结点共有2n个指针域
(lchild和rchild),显然有n+1个空闲指针域未用。
则可以利用这些空闲的指针域来存放结
点的直接前驱和直接后继信息。
为避免混淆,对结点结构加以改进,增加两个标志域,如图所示。
用这种结点结构构成
的二叉树的存储结构;叫做线索链表;指向结点前驱和后继的指针叫做线索;
2、线索二叉树的构建
按照某种次序遍历,加上线索的二叉树称之为线索二叉树。
线索化二叉树:二叉树的线
索化指的是依照某种遍历次序使二叉树成为线索二叉树的过程。
线索化的过程就是在遍历过程中修改空指针使其指向直接前驱或直接后继的过程。
【2013年】若x是后序线索二叉树中的叶结点,且x存在左兄弟结点y,则x的右
ax的父结点b以y为根的子树的最左下结点
cx的左兄弟结点yd以y为根的子树的最右下结点
【2014年】若对如下的二叉树进行中序线索化,则结点x的左、右线索指向的结点分
1、树转化为二叉树
对于一般的树,可以方便地转换成一棵唯一的二叉树与之对应。
将树转换成二叉树在“孩
子兄弟表示法”
中已给出,其详细步骤是:
1加虚线。
在树的每层按从“左至右”
的顺序在兄弟结点之间加虚线相连。
2去连线。
除最左的第一个子结点外,父结点与所有其它子结点的连线都去掉。
3旋转。
本章未完,点击下一页继续阅读