#GESP202506C6T2. 判断题(每题 2 分,共 20 分)
判断题(每题 2 分,共 20 分)
GESP 2025年6月认证 C++ 6级试题
二、判断题(每题2分,共20分)
第 16 题 构造函数可以被声明为 virtual
。
{{ select(16) }}
- 对
- 错
第 17 题 给定一组字符及其出现的频率,构造出的哈夫曼树是唯一的。 {{ select(17) }}
- 对
- 错
第 18 题 为了实现一个队列,使其出队操作(pop
)的时间复杂度为 并且避免数组删除首元素的 问题,一种常见且有效的方法是使用环形数组,通过调整队首和队尾指针来实现。
{{ select(18) }}
- 对
- 错
第 19 题 对一棵二叉排序树进行中序遍历,可以得到一个递增的有序序列。 {{ select(19) }}
- 对
- 错
第 20 题 如果二叉搜索树在连续的插入和删除操作后,所有节点都偏向一侧,导致其退化为类似于链表的结构,这时其查找、插入、删除操作的时间复杂度会从理想情况下的 退化到 。 {{ select(20) }}
- 对
- 错
第 21 题 执行下列代码,my_dog.name
的最终值是 Charlie
。
class Dog {
public:
std::string name;
Dog(std::string str) : name(str) {}
};
int main() {
Dog my_dog("Buddy");
my_dog.name = "Charlie";
return 0;
}
{{ select(21) }}
- 对
- 错
第 22 题 下列 C++ 代码可以成功编译,并且子类 Child
的实例能通过其成员函数访问父类 Parent
的属性 value
。
class Parent {
private:
int value = 100;
};
class Child : public Parent {
public:
int get_private_val() {
return value; // 尝试访问父类的私有成员
}
};
{{ select(22) }}
- 对
- 错
第 23 题 下列代码中的 tree
向量,表示的是一棵完全二叉树(-1 代表空节点)按照层序遍历的结果。
#include <vector>
std::vector<int> tree = {1, 2, 3, 4, -1, 6, 7};
{{ select(23) }}
- 对
- 错
第 24 题 在树的深度优先搜索(DFS)中,使用栈作为辅助数据结构以实现"先进后出"的访问顺序。 {{ select(24) }}
- 对
- 错
第 25 题 下面代码采用动态规划求解零钱兑换问题:给定 种硬币,第 种硬币的面值为 ,目标金额为 ,每种硬币可以重复选取,求能够凑出目标金额的最少硬币数量;如果不能凑出目标金额,返回 -1。
int coinChangeDPComp(vector<int> &coins, int amt) {
int n = coins.size();
int MAX = amt + 1;
vector<int> dp(amt + 1, MAX);
dp[0] = 0;
for (int i = 1; i <= n; i++) {
for (int a = 1; a <= amt; a++) {
if (coins[i - 1] > a)
dp[a] = dp[a];
else
dp[a] = min(dp[a], dp[a - coins[i - 1]] + 1);
}
}
return dp[amt] != MAX ? dp[amt] : -1;
}
{{ select(25) }}
- 对
- 错