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 小时前
C 语言 数组删除指定元素(快慢指针法)
c语言·数据结构·算法
C++ 老炮儿的技术栈10 小时前
有符号变量与无符号变量的区别
服务器·开发语言·前端·数据结构·c++·算法·c
keyipatience11 小时前
跳表详细解析
开发语言·数据结构·c++·算法·跳表
小小、码农12 小时前
〖Linux文件系统〗:彻底打通文件 IO 全链路
linux·开发语言·数据结构·c++·系统
INGNIGHT13 小时前
1897 · 会议室 3(扫描线)
数据结构·算法
All for pursuit.13 小时前
【贪心-2】253.会议室 II
数据结构·c++·算法·leetcode
Logic10117 小时前
C语言/数据结构字符串题解:按字符类型重排(数字→字母→符号)——三趟扫描稳定分区
c语言·数据结构·字符串·时间复杂度·计数排序·算法题·ascii
Logic1011 天前
C语言/数据结构位运算题解:异或XOR找出学习计划中的“独特学习时间“——只出现一次的数字
c语言·数据结构·数组·位运算·时间复杂度·算法题·异或性质
小蒋学算法1 天前
算法-交替删除操作后最后剩下的整数-跟着灵茶山艾府学算法
数据结构·算法
思麟呀1 天前
位运算:从一个整数到一个集合
c语言·数据结构·c++·算法