下列关于树的遍历的说法中,正确的一项是( )。
DFS 使用栈(或递归),沿一条路径走到底再回溯,适合遍历所有可能状态。注意回溯时的状态恢复。
DFS 递归遍历时注意状态回溯(恢复现场)。图遍历需要visited数组避免重复访问和死循环。
【考点】二叉树遍历序列唯一性|二叉树结构重建|平衡二叉树判定
🎯 考纲定位 GESP 七级"树与图的遍历"模块,命题人专门卡住"遍历顺序对结构影响"的盲区。绝大多数人背了"先序+中序能确定二叉树"的结论,却忽略"先序+后序"或"中序单调"等伪命题的陷阱。
🧠 解题思维:A错——DFS 顺序取决于子节点访问次序(左/右优先),同一棵树可产生不同序列;B错——先序定根,后序只能给左/右子树整体,无法区分单孩子方向(如根 A 左子 B 与根 A 右子 B 的先序后序完全相同),故不唯一;C对——先序给根,中序按根位置切分左右子树,递归唯一确定结构;D错——中序单调只说明是 BST 性质,与平衡因子无关,高度失衡的 BST 中序同样有序。
🪤 陷阱拆解:A 的绝对化表述"一定唯一"是典型陷阱,命题人利用"遍历算法固定则序列固定"的直觉误导;B 偷换概念,把"先序+中序"的结论套用在"先序+后序"上,忽略单孩子歧义;D 把 BST 的排序特性与平衡树定义混为一谈,属于概念偷换。
🔄 反命题思维:若把 C 改成"已知后序和中序",答案会怎样?——同样能唯一确定(后序给左/右子树整体,中序切分),但先序+后序不行。命题人常把"能确定"和"一定唯一"混搭,先问你能否确定,再问是否唯一,看你是否会掉进绝对化表述的坑。