408真题解析-2009-3-数据结构-树-遍历方式

一 真题 2009-3

3 给定二叉树如右图所示。设N代表二叉树的根,L代表根节点的左子树,R代表根节点右子树。 若遍历后的结点序列是3,1,7,5,6,2,4,则其遍历方式是()

A. LRN B. NRL C. RLN D. RNL

二 题目解析

本题是根据二叉树图,以及遍历顺序考察遍历方式。

三 哔哔详解

突破思维定势:学习时,教材约定二叉树遍历时子节点是先左后右,所以有三种遍历方式 ,分别为先序NLR、中序LNR、后序LRN、但考试时,并没有这种约定,还有对应的NRL、RNL、RLN;

3.1 方法一 逐个选项尝试

按逐个选项遍历方式,将该二叉树遍历,比如D选项 RNL,则遍历顺序 3,1,7,5,6,2,4 显然符合;

3.2 方法二 相对位置法

观察一个结点A,其既有左儿子B,又有右儿子C,然后观察A\B\C 在已知遍历顺序里的相对位置,即可得出答案;比如根节点N=1,其左儿子L=2,右儿子R=3,在遍历顺序3,1,7,5,6,2,4,里相对位置 3,1,2即RNL为所求。

四 参考答案

参考答案: D

五 考点精析

5.1 二叉树遍历

二叉树的遍历由访问根节点(N)、遍历左子树(L)、遍历右子树(R)的顺序决定,常见的有前序(NLR)、中序(LNR)、后序(LRN)。本题考察其变体,如 RNL(右-根-左),即中序遍历的镜像。

六 考点追踪

暂无

相关推荐
驭渊的小故事8 小时前
简单模板笔记
数据结构·笔记·算法
VT.馒头8 小时前
【力扣】2727. 判断对象是否为空
javascript·数据结构·算法·leetcode·职场和发展
历程里程碑10 小时前
Linux 库
java·linux·运维·服务器·数据结构·c++·算法
Sheep Shaun10 小时前
如何让一个进程诞生、工作、终止并等待回收?——探索Linux进程控制与Shell的诞生
linux·服务器·数据结构·c++·算法·shell·进程控制
Pluchon10 小时前
硅基计划4.0 简单模拟实现AVL树&红黑树
java·数据结构·算法
小龙报10 小时前
【51单片机】从 0 到 1 玩转 51 蜂鸣器:分清有源无源,轻松驱动它奏响新年旋律
c语言·数据结构·c++·stm32·单片机·嵌入式硬件·51单片机
dllxhcjla10 小时前
数据结构和算法
数据结构
历程里程碑12 小时前
普通数组----轮转数组
java·数据结构·c++·算法·spring·leetcode·eclipse
sin_hielo12 小时前
leetcode 1653
数据结构·算法·leetcode
李日灐12 小时前
C++进阶必备:红黑树从 0 到 1: 手撕底层,带你搞懂平衡二叉树的平衡逻辑与黑高检验
开发语言·数据结构·c++·后端·面试·红黑树·自平衡二叉搜索树