网友您好, 请在下方输入框内输入要搜索的题目:

题目内容 (请给出正确答案)
对下图所示的二叉树进行顺序存储(根结点编号为1,对于编号为i的结点,其左孩子结点为2i,右孩子结点为2i+1)并用一维数组BT来表示,已知结点X、E和D在数组BT中的下标分别为1、2、3,可推出结点G、K和H在数组BT中的下分别为( )。

A.10、11、12
B.12、24、25
C.11、12、13
D.11、22、23

参考答案

参考解析
解析:元素G为F的右子树,其下标为2F+1 ; F为元素E的右子树,其下标为2E+1, E的下标为2,因此G=2* (2*2+1) +1=11 ; K=2G=22 ; H=2G+1=23 ;
更多 “对下图所示的二叉树进行顺序存储(根结点编号为1,对于编号为i的结点,其左孩子结点为2i,右孩子结点为2i+1)并用一维数组BT来表示,已知结点X、E和D在数组BT中的下标分别为1、2、3,可推出结点G、K和H在数组BT中的下分别为( )。 A.10、11、12 B.12、24、25 C.11、12、13 D.11、22、23” 相关考题
考题 用数组A[1···n]顺序存储完全二叉树的各结点,则当i0,且i=___________时,结点A[i]的右子女是结点A[ 2i+1],否则结点A[i]没有右子女。

考题 假设一棵完全二叉树按层次遍历的顺序依次存放在数组BT[m]中,其中根结点存放在BT[0],若BT[i]中的结点有左孩子,则左孩子存放在() A.BT[i/2]B.BT[2*i-1]C.BT[2*i]D.BT[2*i+1]

考题 阅读以下说明和C函数,将应填入(n)处的字句写在对应栏内。【说明】已知某二叉树的非叶子结点都有两个孩子结点,现将该二叉树存储在结构数组Ht中。结点结构及数组Ht的定义如下:define MAXLEAFNUM 30struct node{char ch; /*当前结点表示的字符,对于非叶子结点,此域不用*/char *pstr; /*当前结点的编码指针,非叶子结点不用*/int parent; /*当前结点的父结点,为0时表示无父结点*/int lchild,rchild;/*当前结点的左、右孩子结点,为0时表示无对应的孩子结点*/};struct node Ht[2*MAXLEAFNUM]; /*数组元素Ht[0]不用*/该二叉树的n个叶子结点存储在下标为1~n的Ht数组元素中。例如,某二叉树如果其存储结构如下图所示,其中,与叶子结点a对应的数组元素下标为1,a的父结点存储在Ht[5],表示为Ht[1].parent=5。Ht[7].parent=0表示7号结点是树根,Ht[7].child=3、Ht[7].rchild=6分别表示7号结点的左孩子是3号结点、右孩子是6号结点。如果用0或1分别标识二叉树的左分支和右分支(如上图所示),从根结点开始到叶子结点为止,按所经过分支的次序将相应标识依次排列,可得到一个0、1序列,称之为对应叶子结点的编码。例如,上图中a,b,c,d的编码分别是100,101,0,11。函数LeafCode(Ht[],n)的功能是:求解存储在Ht中的二叉树中所有叶子结点(n个)的编码,叶子结点存储在Ht[1]~Ht[n]中,求出的编码存储区由对应的数组元素pstr域指示。函数LeafCode从叶子到根逆向求叶子结点的编码。例如,对上图中叶子结点a求编码的过程如下图所示。typedef enum Status {ERROR,OK} Status;【C函数】Status LeafCode(struct node Ht[], int n){int pc, pf; /*pc用于指出树中的结点,pf则指出pc所对应结点的父结点*/int i,start;char tstr[31] = {'\0'}; /*临时存储给定叶子结点的编码,从高下标开始存入*/for(i = 1;(1); i++){ /*对所有叶子结点求编码,i表示叶结点在HT数组中的下标*/start = 29;pc = i; pf = Ht[i].parent;while (pf !=(2)) { /*没有到达树根时,继续求编码*/if ((3).lchild == pc ) /*pc所表示的结点是其父结点的左孩子*/tstr[--start] = '0';elsetstr[--start] = '1';pc =(4); pf = Ht[pf].parent; /*pc和pf分别向根方向回退一层*/}/* end of while */Ht[i].pstr = (char *) malloc(31-start);if (!Ht[i].pstr) return ERROR;strcpy(Ht[i].pstr,(5));}/* end of for */return OK;}/* and of LeafCode */

考题 用数组A[l..n]顺序存储完全二叉树的各结点,则当i0,且i=【 】时,结点A[i]的右子女是结点A[2i+1],否则结点A[i]没有右子女。

考题 若对一棵有n个结点的完全二叉树的结点按层自上而下、自左至右编号,则对任意结点i(1≤i≤n),有( )。Ⅰ.若2i>n,则结点i无左孩子Ⅱ若2i+1>n,则结点无右孩子Ⅲ.若结点i有左孩子,则其左孩子编号为2iⅣ.若i>1,则其双亲结点编号为{i/2}A.Ⅱ和ⅢB.Ⅰ和ⅡC.Ⅲ和ⅣD.全都是

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

考题 对二叉树中的结点如下编号:树根结点编号为1,根的左孩子结点编号为2、右孩子结点编号为3,依此类推,对于编号为i的结点,其左孩子编号为2i、右孩子编号为2i+1。例如,下图所示二叉树中有6个结点,结点a、b、c、d、e、f的编号分别为1、2、3、5、7、11。那么,当结点数为n(n0)的( )时,其最后一个结点编号为2i-1A.二叉树为满二叉树(即每层的结点数达到最大值)B.二叉树中每个内部结点都有两个孩子C.二叉树中每个内部结点都只有左孩子D.二叉树中每个内部结点都只有右孩子

考题 用数组A[1…n]顺序存储完全二叉树的各结点,则当i0,且i=__________时,结点A[i]的右子女是结点A[2i 1],否则结点A[i]没有右子女。

考题 对下图所示的二叉树进行顺序存储(根结点编号为1,对于编号为i的结点,其左孩子结点为2i,右孩子结点为2i+1)并用一维数组BT来表示。已知结点X、E和D在数组BT中的下标为分别为1、2、3,可推出结点G、K和H在数组BT中的下标分别为( )。 A.10、11、12 B.12、24、25 C.11、12、13 D.11、22、23

考题 用顺序存储的方法将完全二叉树中的所有结点逐层存放在数组A[1]~A[n]中,结点A[i]若有左子树,则左子树的根结点是()。A.A[i/2] B.A[2i] C.A[2i-1] D.A[2i+1]

考题 一棵有n个结点的二叉树,按层次从上到下,同一层从左到右顺序存储在一维数组A[1.n]中,则二叉树中第i个结点(i从1开始用上述方法编号)的右孩子在数组A中的位置是()。A.A[2i](2i<=n) B.A[2i+1](2i+1<=n) C.A[i-2] D.条件不充分,无法确定

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

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

考题 按层次从上至下,每一层从左至右的顺序将二叉树的结点信息依次存放在数组元素BT[1]~BT[n]中,结点BT[i]如果存在右孩子,则该右孩子是()

考题 假定一棵二叉树顺序存储在一维数组a中,但让编号为1的结点存入a[0]元素中,让编号为2的结点存入a[1]元素中,其余类推,则编号为i结点的左孩子结点对应的存储位置为(),若编号为i结点的存储位置用j表示,则其左孩子结点对应的存储位置为()。

考题 在对二叉树进行顺序存储时,若下标为6的结点P既有双亲结点,又有左孩子结点和右孩子结点,则P的双亲结点的下标为(),左孩子结点的下标为(),右孩子结点的下标为()

考题 用顺序存储的方法将完全二叉树中的所有结点逐层存放在数组A[1]~A[n]中,结点A[i]若有左子树,则左子树的根结点是()。A、A[2i-1]B、A[2i+1]C、A[i/2]D、A[2i]

考题 一棵有n个结点的二叉树,按层次从上到下,同一层从左到右的顺序存储在一维数组A[n]中,则二叉树中第I个结点(I从1开始用上述方法编号)的右孩子在数组A中的位置是()A、A[2I]  (2I≤n)B、A[2I+1]  (2I+1≤n)C、A[i/2]D、条件不充分,无法确定

考题 用顺序存储的方法,将完全二叉树中所有结点按层逐个从左到右的顺序存放在一维数组R[1..N]中,若结点R[i]有右孩子,则其右孩子是()。A、R[2i-1]B、R[2i+1]C、R[2i]D、R[2/i]

考题 用顺序存储的方法将完全二叉树中的所有结点逐层存放在数组中R[1..n],结点R[i]若有左孩子,其左孩子的编号为结点()。A、 R[2i+1]B、 R[2i]C、 R[i/2]D、 R[2i-1]

考题 单选题用顺序存储的方法将完全二叉树中的所有结点逐层存放在数组A[1]~A[n]中,结点A[i]若有左子树,则左子树的根结点是()。A A[2i-1]B A[2i+1]C A[i/2]D A[2i]

考题 填空题假定一棵二叉树顺序存储在一维数组a中,但让编号为1的结点存入a[0]元素中,让编号为2的结点存入a[1]元素中,其余类推,则编号为i结点的左孩子结点对应的存储位置为(),若编号为i结点的存储位置用j表示,则其左孩子结点对应的存储位置为()。

考题 填空题在对二叉树进行顺序存储时,若下标为6的结点P既有双亲结点,又有左孩子结点和右孩子结点,则P的双亲结点的下标为(),左孩子结点的下标为(),右孩子结点的下标为()

考题 单选题用顺序存储的方法,将完全二叉树中所有结点按层逐个从左到右的顺序存放在一维数组R[1..N]中,若结点R[i]有右孩子,则其右孩子是()。A R[2i-1]B R[2i+1]C R[2i]D R[2/i]

考题 填空题按层次从上至下,每一层从左至右的顺序将二叉树的结点信息依次存放在数组元素BT[1]~BT[n]中,结点BT[i]如果存在右孩子,则该右孩子是()

考题 单选题用顺序存储的方法将完全二叉树中的所有结点逐层存放在数组中R[1..n],结点R[i]若有左孩子,其左孩子的编号为结点()。A  R[2i+1]B  R[2i]C  R[i/2]D  R[2i-1]

考题 单选题一棵有n个结点的二叉树,按层次从上到下,同一层从左到右的顺序存储在一维数组A[n]中,则二叉树中第I个结点(I从1开始用上述方法编号)的右孩子在数组A中的位置是()A A[2I]  (2I≤n)B A[2I+1]  (2I+1≤n)C A[i/2]D 条件不充分,无法确定