GESP 六级 · GESP 202506 C++ 六级 第 11 题

选择题 · 答案 A · 考点:函数与递归、搜索

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

题目

请将下列 C++ 实现的深度优先搜索(DFS)代码补充完整,横线处应填入( )。

struct TreeNode {
    int val;
    TreeNode* left;
    TreeNode* right;
    TreeNode(int x): val(x), left(nullptr), right(nullptr) {}
};

void dfs(TreeNode* root, vector<int>& result) {
    if (root == nullptr) return;
    ________________________
}

A.

result.push_back(root->val);
dfs(root->left);
dfs(root->right);

B.

result.push_back(root->left->val);
dfs(root->right);
dfs(root->left);

C.

result.push_back(root->left->val);
dfs(root->left);
dfs(root->right);

D.

result.push_back(root->right->val);
dfs(root->right);
dfs(root->left);
答案:A

考点

函数与递归搜索

解题思维

根据上下文和C++语法规则确定空缺处应填的内容,关注函数调用参数、表达式和返回值类型。

常见错误

填空时注意语法完整性:分号、括号匹配、函数参数类型和个数、返回值类型。

详细解析(节选)

【考点】递归|二叉树遍历|深度优先搜索(DFS)

1. 🎯 考纲定位

本题考查《GESP 考试大纲》六级树形结构模块中的二叉树遍历,属于递归基础应用。命题人专门卡住那些只会背"前序中序后序口诀"、却不懂代码实现逻辑的考生——他们知道"前序是根左右",但一到写代码就分不清"先处理当前节点还是先递归"。

同考点真题

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