#GESP202512C6T2. 判断题(每题 2 分,共 20 分)

    ID: 4141 Type: Objective Tried: 1 Accepted: 1 Difficulty: 5 Uploaded By: Tags>GESP六级程序设计基础数据结构算法基础搜索动态规划 DP程序阅读

判断题(每题 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 题

小杨在玩一个闯关游戏,从第 11 关走到第 44 关。每一关的体力消耗如下(下标表示关卡编号):cost = [0, 3, 5, 2, 4]。其中 cost[i] 表示到达第 i 关需要消耗的体力,cost[0]=0 表示在开始状态,体力消耗为 00。小杨每次可以从当前关卡前进 11 步或 22 步。按照上述规则,从第 11 关到第 44 关所需消耗的最小体力为 77

{{ select(9) }}

  • 正确
  • 错误

第 10 题

假定只有一个根节点的树的深度为 11,则一棵有 nn 个节点的完全二叉树,则树的深度为 log2(n)+1\lfloor \log_2(n) \rfloor + 1

{{ select(10) }}

  • 正确
  • 错误