模拟卷 数据结构 二叉树的遍历二叉树遍历 选择题
第 5 题

前序遍历和中序遍历结果相同的二叉树为( )。 I. 只有根结点的二叉树 II. 根结点无右孩子的二叉树 III. 所有结点只有左子树的二叉树 IV. 所有结点只有右子树的二叉树

A. 仅有 I B. I、II 和 IV C. I 和 III D. I 和 IV

二叉树的遍历 二叉树遍历

[tag_link]

正确答案:D

前序遍历的顺序是根节点、左子树、右子树; 中序遍历的顺序是左子树、根节点、右子树。 要使两者结果相同,需满足序列的对应关系。

对于只有根结点的二叉树,前序和中序都仅包含根节点,序列相同,因此 I 正确。

对于根结点无右孩子的二叉树,若根结点有左孩子,则前序以根节点开头,中序以左子树节点开头,序列不同; 若左孩子也为空(即只有根结点),则与 I 相同。 因此 II 不一定成立。

对于所有结点只有左子树的二叉树(即左斜树),前序从根节点开始向下访问左孩子,中序从最左叶子开始向上访问,两者序列相反,因此 III 错误。

对于所有结点只有右子树的二叉树(即右斜树),每个节点的左子树为空,中序遍历中节点在左子树之后访问,由于左子树为空,节点立即被访问,然后访问右子树,递归地使得整个树的前序和中序序列一致,因此 IV 正确。

综上所述,I 和 IV 正确,对应选项 D。