参考答案和解析
正确答案:错误
更多“从一棵B树删除关键码的过程中,若最终引起树根结点的合并,则新树比”相关问题
  • 第1题:

    一棵树按照左子女-右兄弟表示法转换成对应的二叉树,则该二叉树中树根结点肯定没有【 】子女。


    正确答案:右
    右 解析:对于根结点没有兄弟,所以没有右子女。

  • 第2题:

    如下所示是一棵5阶B树,从该B树中删除关键码41后,该B树的叶结点数为

    A.6

    B.7

    C.8

    D.9


    正确答案:B

  • 第3题:

    下面关于B树运算的叙述中,正确的是

    A.若插入过程甲根结点发生分裂,则B树的高度加1

    B.每当进行插入运算,就往B树的最下面一层增加一个新结点

    C.若要删除的关键码出现在根结点中,则不能真正删除,只能做标记

    D.删除可能引起B树结点个数减少,但不会造成B树高度减小


    正确答案:A
    解析:在B树里插入一个关键码的方法是:对于叶结点处于第i层的B树,插入的关键码总是在第i-1层。若i-1已满,则须把结点分裂为两个,并把中间的一个关键码插到结点的双亲结点上,若双亲结点也是满的,就需要再分裂再向上插。删除过程也类似。每当进行插入运算,就往B数的i-1增加一个新结点;若要删除的关键码出现在根结点中时,将把根结点与它的子女合并,形成新的结点;删除不但可能引起B树结点个数减少,而且会造成B树高度减小。

  • 第4题:

    若一棵满二叉树含有121个结点,则该树的深度为()。


    正确答案:7

  • 第5题:

    当向B—树中插入关键码时,可能引起结点的(),最终可能导致整个B-树的高度(),当从B—树中删除关键码时,可能引起结点(),最终可能导致整个B—树的高度()。


    正确答案:分裂;增加1;合并;减少1

  • 第6题:

    在一棵m阶的B—树中,当将一个关键码插入某结点而引起该结点分裂时,此结点原有()个关键码;若删去某结点中的一个关键码,而导致结点合并时,该结点原有()个关键码。


    正确答案:m-1;[m/2]-1

  • 第7题:

    在一棵B—树中删除关键码,若最终引起树根结点的合并,则新树比原树的高度()。


    正确答案:减少1层

  • 第8题:

    向一棵B_树插入元素的过程中,若最终引起树根结点的分裂,则新树比原树的高度()。


    正确答案:增加1

  • 第9题:

    填空题
    在一棵B—树中删除关键码,若最终引起树根结点的合并,则新树比原树的高度()。

    正确答案: 减少1层
    解析: 暂无解析

  • 第10题:

    单选题
    在一棵树中,()没有前驱结点。
    A

    分支结点

    B

    叶结点

    C

    树根结点

    D

    空结点


    正确答案: B
    解析: 暂无解析

  • 第11题:

    填空题
    在一棵高度为h的B—树中,叶子结点处于第()层,当向该B—树中插入一个新关键码时,为查找插入位置需读取()个结点。

    正确答案: h+1,h
    解析: B-树的叶子结点可以看作是外部结点(即查找失败)的结点,通常称为外结点。实际上这些结点不存在,指向这些结点的指针为空,B-树将记录插入在终端结点中。

  • 第12题:

    填空题
    向一棵B_树插入元素的过程中,若最终引起树根结点的分裂,则新树比原树的高度()。

    正确答案: 增加1
    解析: 暂无解析

  • 第13题:

    阅读以下说明和C语言函数,将应填入(n)处的字句写在答题纸的对应栏内。

    【说明】

    一棵非空二叉树中“最左下”结点定义为:若树根的左子树为空,则树根为“最左下”结点;否则,从树根的左子树根出发,沿结点的左

    子树分支向下查找,直到某个结点不存在左子树时为止,该结点即为此二叉树的“最左下”结点。例如,下图所示的以 A为根的二叉树的“最

    左下”结点为D,以C为根的子二叉树中的“最左下”结点为C。

    二叉树的结点类型定义如下:

    typedef stmct BSTNode{

    int data;

    struct BSTNode*lch,*rch;//结点的左、右子树指针

    }*BSTree;

    函数BSTree Find Del(BSTree root)的功能是:若root指向一棵二叉树的根结点,则找出该结点的右子树上的“最左下”结点*p,并从

    树于删除以*p为根的子树,函数返回被删除子树的根结点指针;若该树根的右子树上不存在“最左下”结点,则返回空指针。

    【函数】

    BSTrce Find_Del(BSTreeroot)

    { BSTreep,pre;

    if ( !root ) return NULL; /*root指向的二叉树为空树*/

    (1); /*令p指向根结点的右子树*/

    if ( !p ) return NULL;

    (2); /*设置pre的初值*/

    while(p->lch){ /*查找“最左下”结点*/

    pre=p;p=(3);

    }

    if ((4)==root) /*root的右子树根为“最左下”结点*/

    pre->rch=NULL;

    else

    (5)=NULL; /*删除以“最左下”结点为根的子树*/

    reurn p;

    }


    正确答案:(1)p=root->rch (2)pre=root (3)p->lch (4)pre (5)pre->lch
    (1)p=root->rch (2)pre=root (3)p->lch (4)pre (5)pre->lch 解析:根据题目中的说明,函数BSTree FindDel (BSTreeroot)的功能是:若root指向一棵二叉树的根结点,则找出该结点的右子树上的“最

    左下”结点*p,并从树中删除以 *p为根的子树,函数返回被删除子树的根结点指针;若该树根的右子树上不存在“最左下”结点,则返回空指

    针。而一棵非空二叉树中“最左下”结点定义为:若树根的左子树为空,则树根为“最左下”结点;否则,从树根的左子树根出发,沿结点的

    左子树分支向下查找,直到某个结点不存在左子树时为止,该结点即为此二叉树的“最左下”结点。
    因此,给定一棵非空二叉树后,其右子树上的“最左下”结点要么为右子树根结点自己,要么为右子树根的左子树结点。
    当二叉树非空时,root指向的结点是存在的,因此,令p指向根结点的右子树表示为“p=root->rch"。在二叉树上删除结点的操作实质上

    是重置其父结点的某个子树指针,因此查找被删除结点时,需要保存被删结点的父结点指针,pre起的就是这个作用。空 (2)处应填入

    “p=root",使得指针pre与p指向的结点始终保持父子关系。根据“最左下”结点的定义,空(3)处应填入“p->lch"。
    当root的右子树根为“最左下”结点时,pre指针的指向就不会被修改,因此,空 (4)处应填入“pre”。若“最左下”结点在root的右子

    树的左子树上,则删除以p指向的“最左下”结点为根的子树就是将pre(*p的父结点)的左子树指针置空,因此,空 (5)填入“pre->Ich"。

  • 第14题:

    一棵树按照左子女一右兄弟表示法转换成对应的二叉树,则该二叉树中树根结点肯定没有【 】子女。


    正确答案:右
    右 解析:由于根结点没有兄弟,所以没有右子女。

  • 第15题:

    在任意一棵非空二叉树中,删除某结点后又将其插入,则所得二叉排序树与删除前原二叉树排序树相同。


    正确答案:错误

  • 第16题:

    从一棵二叉搜索树中查找一个元素时,若元素的值等于根结点的值,则表明(),若元素的值小于根结点的值,则继续向()查找,若元素的大于根结点的值,则继续向()查找。


    正确答案:找到;左子树;右子树

  • 第17题:

    在一棵树中,()没有前驱结点。

    • A、分支结点
    • B、叶结点
    • C、树根结点
    • D、空结点

    正确答案:C

  • 第18题:

    在一棵高度为h的B—树中,叶子结点处于第()层,当向该B—树中插入一个新关键码时,为查找插入位置需读取()个结点。


    正确答案:h+1;h

  • 第19题:

    在一棵树中,()没有前趋结点。

    • A、叶子结点
    • B、树根结点
    • C、空结点
    • D、树枝结点

    正确答案:B

  • 第20题:

    填空题
    在一棵m阶的B—树中,当将一个关键码插入某结点而引起该结点分裂时,此结点原有()个关键码;若删去某结点中的一个关键码,而导致结点合并时,该结点原有()个关键码。

    正确答案: m-1,[m/2]-1
    解析: 暂无解析

  • 第21题:

    判断题
    向一棵B树插入关键码的过程中,若最终引起树根结点的分裂,则新树比原树的高度减少1。()
    A

    B


    正确答案:
    解析:

  • 第22题:

    填空题
    当向B—树中插入关键码时,可能引起结点的(),最终可能导致整个B-树的高度(),当从B—树中删除关键码时,可能引起结点(),最终可能导致整个B—树的高度()。

    正确答案: 分裂,增加1,合并,减少1
    解析: 暂无解析

  • 第23题:

    判断题
    从一棵B树删除关键码的过程中,若最终引起树根结点的合并,则新树比原树的高度增加1。()
    A

    B


    正确答案:
    解析: