已知二 叉排序 树采 用二叉 链表存 储结构 , 根结点 的指针为 T,链 结点的 结构为 (lchild,data,rchild),其中 lchild,rchild 分别指向该结点左、右孩子的指针,data 域存放结点的数据信息。请写出递归算法,从小到大输出二叉排序树中所有数据值>=x 的结点的数据。要 求先找到第一个满足条件的结点后,再依次输出其他满足条件的结点。
举一反三
- 若一棵有n个结点的二叉树采用二叉链表来存储,二叉链表结点结构为(lchild,data,rchild),则该二叉链表中有个空指针域。
- 二叉排序树采用二叉链表存储,结点结构为:lchild|data|rchild,指针lchild和rchild分别指向结点的左右孩子结点。令T指向根结点,则求T的左子树上最大的结点算法的核心语句是( )。 A: if (T) { s=T->lchild;if (s) { while(s->rchild) s=s->rchild; }}return s; B: if (T) { s=T->rchild;if (s) { while(s->rchild) s=s->rchild; }}return s; C: if (T) { s=T->rchild;if (s) { while(s->lchild) s=s->lchild; }}return s; D: if (T) { s=T->lchild;if (s) { while(s->lchild) s=s->lchild; }}return s;
- 设一棵二叉树BT的存储结构如下:其中lchild,rchild分别为结点的左、右孩子指针域,data为结点的数据域。则该二叉树的高度为()。 A: 2 B: 3 C: 4 D: 5
- 设二叉树中结点的两个指针域分别为lchild和rchild,则判断指针变量p所指向的结点为叶子结点的条件 p->lchild==NULL&&
- 设二叉树中结点的两个指针域分别为lchild和rchild,则判断指针变量p所指向的结点为叶子结点的条件是。