#GESP202512C6T2. 判断题(每题 2 分,共 20 分)
判断题(每题 2 分,共 20 分)
二、判断题
第 1 题 以下代码中,构造函数被调用的次数是1次。
class Test {
public:
Test() { cout << "T "; }
};
int main() {
Test a;
Test b = a;
}
{{ select(1) }}
- 对
- 错
第 2 题 面向对象编程中,封装是指将数据和操作数据的方法绑定在一起,并对外隐藏实现细节。 {{ select(2) }}
- 对
- 错
第 3 题 以下代码能够正确统计二叉树中叶子结点的数量。
int countLeaf(TreeNode* root) {
if (!root) return 0;
if (!root->left && !root->right) return 1;
return countLeaf(root->left) + countLeaf(root->right);
}
{{ select(3) }}
- 对
- 错
第 4 题 广度优先遍历二叉树可用栈来实现。 {{ select(4) }}
- 对
- 错
第 5 题 函数调用管理可用栈来管理。 {{ select(5) }}
- 对
- 错
第 6 题 在二叉排序树(BST)中,若某结点的左子树为空,则该结点一定是整棵树中的最小值结点。 {{ select(6) }}
- 对
- 错
第 7 题 下面的函数能正确判断一棵树是不是二叉排序树(左边的数字要比当前数字小,右边的数字要比当前数字大)。
bool isBST(TreeNode* root, int minVal, int maxVal) {
if (!root) return true;
if (root->val <= minVal || root->val >= maxVal)
return false;
return isBST(root->left, minVal, root->val) &&
isBST(root->right, root->val, maxVal);
}
{{ select(7) }}
- 对
- 错
第 8 题 格雷编码相邻两个编码之间必须有多位不同,以避免数据传输错误。 {{ select(8) }}
- 对
- 错
第 9 题 小杨在玩一个闯关游戏,从第 1 关走到第 4 关。每一关的体力消耗如下(下标表示关卡编号):,其中 表示到达第 关需要消耗的体力, 表示在开始状态,体力消耗为 0。小杨每次可以从当前关卡前进 1 步或 2 步。按照上述规则,从第 1 关到第 4 关所需消耗的最小体力为 7。 {{ select(9) }}
- 对
- 错
第 10 题 假定只有一个根节点的树的深度为1,则一棵有 个节点的完全二叉树,树的深度为 。 {{ select(10) }}
- 对
- 错