GESP 六级 · GESP202609 C++ 六级 第 6 题

选择题 · 答案 B

← 整套速查表 GESP 六级 全部真题

题目

下列函数实现了二叉树的哪种遍历方式(  )。

void visit(TreeNode *root) {
if (root == nullptr)
return;
visit(root->left);
cout << root->val << " ";
visit(root->right);
}
答案:B

解题思维

看到递归函数先找调用顺序。本题是左子树递归→访问根节点→右子树递归,典型的中序遍历特征。若改成根节点先访问就是前序,根节点最后访问就是后序。

常见错误

选项A前序遍历是根左右,代码里根节点访问在左子树之后;选项C后序遍历是左右根,根节点访问在右子树之后;选项D层序遍历需要队列实现,本题用递归。易错点在于混淆前序和中序,都涉及左子树优先,区别在于根节点访问时机。

详细解析(节选)

1. 考纲定位

GESP六级大纲"数据结构"模块明确列出二叉树遍历为必考内容,命题人放这道题就是卡住那些死记硬背定义却看不懂代码的学生。

2. 解题思维

看到递归函数先找调用顺序。本题是左子树递归→访问根节点→右子树递归,典型的中序遍历特征。若改成根节点先访问就是前序,根节点最后访问就是后序。

在 OI伴学 里做这道题
登录后可计时作答、查看完整六段式解析,并按你的错题自动生成同类练习。
去刷题先做一次 AI 学情诊断