若一个二叉树的树叶是某子树的中序遍历序列中的第一个结点,则它必是

题目

若一个二叉树的树叶是某子树的中序遍历序列中的第一个结点,则它必是该子树的后序遍历序列中的第一个结点。

如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

设计二叉树的双序遍历算法(双序遍历是指对于二叉树的每一个结点来说,先访问这个结点,再按双序遍历它的左子树,然后再一次访问这个结点,接下来按双序遍历它的右子树)。


参考答案:若树为空,返回;若某结点为叶子结点,则仅输出该结点;否则先输出该结点,递归遍历其左子树,再输出该结点,递归遍历其右子树。
  [算法描述]
  void DoubleTraverse(BiTree T)
  {
  if(T == NULL)
  return;
  else if(T->lchild==NULL&&T->rchild==NULL)
  cout<data; //叶子结点输出
  else
  {
  cout<data;
  DoubleTraverse(T->lchild); //递归遍历左子树
  cout<data;
  DoubleTraverse(T->rchild); //递归遍历右子树
  }
  }

第2题:

下列关于二叉树周游的叙述中,哪一条是正确的?

A.若一个结点是某二叉树的对称序最后一个结点,则它必是该二叉树的前序最后一个结点

B.若一个结点是某二叉树的前序最后一个结点,则它必是该二叉树的对称序最后一个结点

C.若一个树叶是某二叉树的对称序最后一个结点,则它必是该二叉树的前序最后一个结点

D.若一个树叶是某二叉树的前序最后一个结点,则它必是该二叉树的对称序最后一个结点


正确答案:C
解析:对一个非空二叉树,遍历时分三个步骤:①访问根结点,②先序遍历左子树,③先序遍历右子树。前序是按照①②③的顺序操作得到的序列,对称序是按照②①③的顺序操作得到的序列,后序是按照②③①的顺序操作得到的序列。当一个序列根结点为A,只有左子树B时,它的对称序为AB,前序为BA,故选项A)和B)均不正确。若上述序列A的右子树为c,c左子树为D时,这个序列的对称序是BADC,前序是ABCD。树叶D为前序的最后一个结点,但却不为对称序的最后一个结点,故选项D)也不正确。

第3题:

( 15 )下列关于二叉树周游的叙述中,哪一项是正确的?

A )若一个结点是某二叉树对称序的最后一个结点,则它必是该二叉树前序的最后一个结点

B )若一个结点是某二叉树前序的最后一个结点,则它必是该二叉树对称序的最后一个结点

C )若一个树叶是某二叉树对称序的最后一个结点,则它必是该二叉树前序的最后一个结点

D )若一个树叶是某二叉树前序的最后一个结点,则它必是该二叉树对称序的最后一个结点


正确答案:D

第4题:

若某二叉树中的所有结点值均大于其左子树上的所有结点值,且小于右子树上的所有结点值,则该二叉树遍历序列中有序的是( )。

A.前序序列

B.中序序列

C.后序序列

D.以上说法均可以


正确答案:B
二叉树遍历可以分为3种:前序遍历(访问根结点在访问左子树和访问右子树之前)、中序遍历(访问根结点在访问左子树和访问右子树两者之间)、后序遍历(访问根结点在访问左子树和访问右子树之后)。由于结点值均大于其左子树上的所有结点值,且小于右子树上的所有结点值,那么只要遍历时访问根结点在访问左子树和右子树之间,遍历序列有序,即中序序列有序。故选B选项。

第5题:

若一个二叉树的叶子结点是某子树的中序遍历序列中的最后一个结点,则它必是该子树的(47)序列中的最后一个结点。

A.前序

B.后序

C.前序和后序

D.都不是


正确答案:A
解析:中序是左一根一右顺序,前序是根一左一右顺序,所以前序和中序的最后一个结点顺序相同。利用中序和前序遍历序列,或者中序和后序遍历序列可以推断出此二叉树的结构:先通过前序或后序得到根结点,再由中序序列将其分成左右子树,如此反复便可得到结果。

第6题:

下列关于二叉树周游的叙述中,正确的是______。

A.若一个结点是某二叉树对称序的最后一个结点,则它必是该二叉树前序的最后—个结点

B.若一个结点是某二叉树前序的最后一个结点,则它必是该二叉树对称序的最后一个结点

C.若一个树叶是某二叉树对称序的最后一个结点,则它必是该二叉树前序的最后一个结点

D.若一个树叶是某二叉树前序的最后—个结点,则它必是该二叉树对称序的最后一个结点


正确答案:C
解析:如图1所示的二叉树,其前序遍历结果为ABCD,对称序遍历结果为CBDA,所以选项A)和选项B)是错误的。有如图2所示的二叉树,其前序遍历结果为ABDECF,对称序遍历结果为 DBEAFC,所以选项D)也是错误的。所以正确的答案是C)。

第7题:

前序遍历序列与中序遍历序列相同的二叉树为(1),前序遍历序列与后序遍历序列相同的二叉树为(2)。

A.根结点无左子树的二叉树

B.根结点无右子树的二叉树

C.只有根结点的二叉树或非叶子结点只有左子树的二叉树

D.只有根结点的二叉树或非叶子结点只有右子树的二叉树


正确答案:D

第8题:

( 12 )下列关于二叉树周游的叙述中,哪一条是正确的?

A )若一个结点足某义树的对称序最后一个结点,则它必是该二叉树的前序最后一个结点

B )若一个结点是某二义树的前序最后一个结点,则它必是该二叉树的对称序最后一个结点

C )若一个树叶是某二叉树的对称序最后一个结点,则它必是该二叉树的前序最后一个结点

D )若一个树叶是某二叉树的前序最后一个结点,则它必是该 _ 叉树的对称序最后一个结点


正确答案:C

第9题:

下列关于二叉树遍历的叙述中,正确的是(42)。

A.若一个树叶是某二叉树的前序最后一个结点,则它必是该二叉树的中序最后一个结点

B.若一个树叶是某二叉树的中序最后一个结点,则它必是该二叉树的前序最后一个结点

C.若一个结点是某二叉树的中序最后一个结点,则它必是该二叉树的前序最后一个结点

D.若一个结点是某二叉树的前序最后一个结点,则它必是该二叉树的中序最后一个结点


正确答案:B
解析:本题考查二叉树的遍历。在前序遍历得到的序列中,最后一个结点可能是右子树的最后一个右孩子叶子结点,如果这个孩子结点不存在,那么就是最后一个左孩子叶子结点。而在中序遍历得到的序列中,最后一个结点可能是右子树的最后一个右孩子叶子结点,如果这个孩子结点不存在,那么就是最后一棵右子树的根结点,所以,在中序序列中最后一个结点如果是叶子结点,那么这个结点肯定是右孩子叶子结点。因此,若一个树叶是某二叉树的前序最后一个结点,未必是该二叉树的中序最后一个结点;而若一个树叶是某二叉树的中序最后一个结点,则它必是该二叉树的前序最后一个结点。

第10题:

对二叉树进行后序遍历和中序遍历时,都依照左子树在前右子树在后的顺序。已知对某二叉树进行后序遍历时,结点M是最后被访问的结点,而对其进行中序遍历时,M是第一个被访问的结点,那么该二叉树的树根结点为M,且( )。

A.其左子树和右子树都必定为空
B.其左子树和右子树都不为空
C.其左子树必定为空
D.其右子树必定为空

答案:C
解析:
前序遍历:先遍历根结点,然后遍历左子树,最后遍历右子树。中序遍历:先遍历左子树,然后遍历根结点,最后遍历右子树。后序遍历:先遍历左子树,然后遍历右子树,最后遍历根节点。结点M是树根结点,而在中序遍历的时候,M是第一个被访问的结点,那么可以看出其左子树应该为空。

更多相关问题