满二叉树的特点是每层上的结点数都达到最大值,因此对于高度为h(h>1)的满二叉树,其结点总数为(1)。对非空满二叉树,由根结点开始,按照先根后子树、先左子树后右子树的次序,从1、2、3、…依次编号,则对于树中编号为i的非叶子结点,其右子树的编号为(2)(高度为3的满二叉树如图8-17所示)。
A.2h
B.2h-1
C.2h-1
D.2h-1+1
对n个结点的二叉树,按()遍历顺序对结点编号(号码为1~n)时,任一结点的编号等于其左子树中结点的最大编号加1,又等于其右子树中结点的最小编号减1。A.前根B.中根C.后根D.层次
点击查看答案
如果根结点的左子树和右子树高度差不超过1,则该二叉树是平衡二叉树。()此题为判断题(对,错)。
若由树转化得到的二叉树是非空的二叉树,则二叉树形状是()。A、根结点无右子树的二叉树B、根结点无左子树的二叉树C、根结点可能有左子树和右子树D、各结点只有一个子女的二叉树
下图所示平衡二叉树(树中任一结点的左右子树高度之差不超过1)中,结点A的右子树AR高度为h,结点B的左子树BL高度为h,结点C的左子树CL、右子树CR高度都为h-1。若在CR中插入一个结点并使得CR的高度增加1,则该二叉树(61)。A.以B为根的子二叉树变为不平衡B.以C为根的子二叉树变为不平衡C.以A为根的子二叉树变为不平衡D.仍然是平衡二叉树
阅读以下说明和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),前序遍历序列与后序遍历序列相同的二叉树为(2)。A.根结点无左子树的二叉树B.根结点无右子树的二叉树C.只有根结点的二叉树或非叶子结点只有左子树的二叉树D.只有根结点的二叉树或非叶子结点只有右子树的二叉树
一个高度为h的满二叉树的结点总数为2h-1,其每一层结点个数都达到最大值。从根结点开始顺序编号,每一层都从左到右依次编号,直到最后的叶子结点层为止。即根结点编号为1,其左、右孩子结点编号分别为2和3,再下一层从左到右的编号为4、5、6、7,依此类推,那么,在一棵满二叉树中,对于编号为m和n的两个结点,若m=2n,则结点(40)。A.m是n的左孩子B.m是n的右孩子C.n是m的左孩子D.n是m的右孩子