itgle.com

一个具有m个结点的二叉树,其二叉链表结点(左、右孩子指针分别用left和right表示)中的空指针总数必定为(57)个。为形成中序(先序、后序)线索二叉树,现对该二叉链表所有结点进行如下操作:若结点p的左孩子指针为空,则将该左指针改为指向p在中序(先序、后序)遍历序列的前驱结点;若p的右孩子指针为空,则将该右指针改为指向p在中序(先序、后序)遍历序列的后继结点。假设指针s指向中序(先序、后序)线索二叉树中的某结点,则(58)。A.m+2B.m+1C.mD.m-1

题目

一个具有m个结点的二叉树,其二叉链表结点(左、右孩子指针分别用left和right表示)中的空指针总数必定为(57)个。为形成中序(先序、后序)线索二叉树,现对该二叉链表所有结点进行如下操作:若结点p的左孩子指针为空,则将该左指针改为指向p在中序(先序、后序)遍历序列的前驱结点;若p的右孩子指针为空,则将该右指针改为指向p在中序(先序、后序)遍历序列的后继结点。假设指针s指向中序(先序、后序)线索二叉树中的某结点,则(58)。

A.m+2

B.m+1

C.m

D.m-1


相似考题
更多“一个具有m个结点的二叉树,其二叉链表结点(左、右孩子指针分别用left和right表示)中的空指针总数必 ”相关问题
  • 第1题:

    某二叉树如图所示,若进行顺序存储(即用一维数组元素存储该二叉树中的结点且通过下标反映结点间的关系,例如,对于下标为i的结点,其左孩子的下标为2i、右孩子的下标为2i+1),则该数组的大小至少为(58);若采用三叉链表存储该二叉树(各个结点包括结点的数据、父结点指针、左孩子指针、右孩子指针),则该链表的所有结点中空指针的数目为(59)。

    A.6
    B.10
    C.12
    D.15

    答案:D
    解析:
    采用顺序存储结构存储二叉树时,一般的二叉树也必须按照完全二叉树的形式存储,需要填上一些不存在的“虚结点”。题中二叉树的高度为4,需要的存储空间为24-1=15,如下:可见,空指针的数目为8。
    可见,空指针的数目为8。

  • 第2题:

    84、┏━━┳━━┳━━━┓ 假定在二叉树的链接存储中,每个结点的结构为┃left┃data┃right ┃,其中data为 ┗━━┻━━┻━━━┛ 整型值域,left和right分别为链接左、右孩子结点的指针域,请在下面中序遍历算法中填空。 void inorder(bt); { if(bt!=NULL) { inorder(bt->left); ; inorder(bt->right);} }


    inorder(bt->left);printf(bt->data);inorder(bt->right)

  • 第3题:

    若用链表存储一棵二叉树时,每个结点除数据域外,还有指向左孩子和右孩子的两个指针。在这种存储结构中,n个结点的二叉树有__________个指针是空指针。


    2n n-1 n+1

  • 第4题:

    2、在具有n个结点的二叉链表中,共有()个指针域,其中()个指针域用于指向其左右孩子,()个指针域是空指针。


    n+1

  • 第5题:

    对具有100个结点的二叉树,若用二叉链表存储,则其指针域部分用来指向结点的左、右孩子,其中一共有()个指针域为空。 A、55 B、99 C、100 D、101

    A.A

    B.B

    C.C

    D.D


    D