#5275. GESP七级真题(202312)
GESP七级真题(202312)
C++ 七级
2023 年 12 月
1 单选题(每题 2 分,共 30 分)
第 1 题 定义变量 double x ,如果下面代码输入为 100 ,输出最接近( )。

{{ select(1) }}
0-5-88
第 2 题 对于下面动态规划方法实现的函数,以下选项中最适合表达其状态转移函数的为( )。

{{ select(2) }}
- f(i,j)=mini≤k<j(f(i,j),f(i,k)+f(k+1,j)+s(j)−(s−1)) f(i,j) = \min_{i \le k < j} (f(i,j),f(i,k)+f(k+1,j)+s(j)-(s-1)) f(i,j)=mini≤k<j(f(i,j),f(i,k)+f(k+1,j)+s(j)−(s−1))
- f(i,j)=mini≤k<j(f(i,j),f(i,k)+f(k+1,j)+∑k=ija(k)) f(i,j) = \min_{i \le k < j} (f(i,j),f(i,k)+f(k+1,j)+\sum_{k=i}^{j}a(k)) f(i,j)=mini≤k<j(f(i,j),f(i,k)+f(k+1,j)+∑k=ija(k))
- f(i,j)=mini≤k≤j(f(i,k)+f(k+1,j)+∑k=ij+1a(k)) f(i,j) = \min_{i \le k \le j} (f(i,k)+f(k+1,j)+\sum_{k=i}^{j+1}a(k)) f(i,j)=mini≤k≤j(f(i,k)+f(k+1,j)+∑k=ij+1a(k))
- f(i,j)=mini≤k<j(f(i,k)+f(k+1,j)+∑k=ija(k)) f(i,j) = \min_{i \le k < j} (f(i,k)+f(k+1,j)+\sum_{k=i}^{j}a(k)) f(i,j)=mini≤k<j(f(i,k)+f(k+1,j)+∑k=ija(k))
第 3 题 下面代码可以用来求最长上升子序列(LIS)的长度,如果输入是: 5 1 7 3 5 9 ,则输出是( )。

{{ select(3) }}
9 7 5 1 1 91 2 2 3 4 41 3 5 7 9 91 1 1 1 1 1
第 4 题 C++语言中,下列关于关键字 static 的描述不正确的是( )。 {{ select(4) }}
- 可以修饰类的成员函数。
- 常量静态成员可以在类外进行初始化。
- 若
a是类A常量静态成员,则a的地址都可以访问且唯一。 - 静态全局对象一定在
main函数调用前完成初始化,执行完main函数后被析构。
第 5 题 G 是一个非连通无向图,共有 28 条边,则该图至少有( )个顶点。 {{ select(5) }}
6789
第 6 题 哈希表长31,按照下面的程序依次输入 4 17 28 30 4 ,则最后的 4 存入哪个位置?( )

{{ select(6) }}
3456
第 7 题 某二叉树T的先序遍历序列为: {A B D F C E G H} ,中序遍历序列为: {B F D A G E H C} ,则下列说法中正确的是( )。 {{ select(7) }}
T的度为1T的高为4T有4个叶节点- 以上说法都不对
第 8 题 下面代码段可以求两个字符串 s1 和 s2 的最长公共子串(LCS),下列相关描述不正确的是( )。

{{ select(8) }}
- 代码的时间复杂度为O(n2)O(n^2)O(n2)
- 代码的空间复杂度为O(n2)O(n^2)O(n2)
- 空间复杂度已经最优
- 采用了动态规划求解
第 9 题 图的广度优先搜索中既要维护一个标志数组标志已访问的图的结点,还需哪种结构存放结点以实现遍历?( )
{{ select(9) }}
- 双向栈
- 队列
- 哈希表
- 堆
第 10 题 对关键字序列 {44,36,23,35,52,73,90,58} 建立哈希表,哈希函数为 h(k)=k%7 ,执行下面的Insert 函数,则等概率情况下的平均成功查找长度(即查找成功时的关键字比较次数的均值)为( )。

{{ select(10) }}
7/811.52
第 11 题 学生在读期间所上的某些课程中需要先上其他的课程,所有课程和课程间的先修关系构成一个有向图 G ,有向边 <U, V> 表示课程 U 是课程 V 的先修课,则要找到某门课程 C 的全部先修课下面哪种方法不可行?( ) {{ select(11) }}
BFS搜索DFS搜索DFS+BFS- 动态规划
第 12 题 一棵完全二叉树有 2023 个结点,则叶结点有多少个?( ) {{ select(12) }}
1024101310121011
第 13 题 用下面的邻接表结构保存一个有向图 G , InfoType 和 VertexType 是定义好的类。设 G 有 n 个顶点、e 条弧,则求图 G 中某个顶点 u (其顶点序号为 k )的度的算法复杂度是( )。

{{ select(13) }}
- O(n)O(n)O(n)
- O(e)O(e)O(e)
- O(n+e)O(n+e)O(n+e)
- O(n+2∗e)O(n+2*e)O(n+2∗e)
第 14 题 给定一个简单有向图 G ,判断其中是否存在环路的下列说法哪个最准确?( ) {{ select(14) }}
BFS更快DFS更快BFS和DFS一样快- 不确定
第 15 题 从顶点 v1 开始遍历下图 G 得到顶点访问序列,在下面所给的 4 个序列中符合广度优先的序列有几个?( ) {v1 v2 v3 v4 v5} , {v1 v2 v4 v3 v5} , {v1 v4 v2 v3 v5} , {v1 v2 v4 v5 v3}

{{ select(15) }}
4321
2 判断题(每题 2 分,共 20 分)
第 1 题 小杨这学期准备参加GESP的7级考试,其中有关于三角函数的内容,他能够通过下面的代码找到结束循环的角度值。( )

{{ select(16) }}
- 对
- 错
第 2 题 小杨在开发画笔刷小程序(applet),操作之一是选中黄颜色,然后在下面的左图的中间区域双击后,就变成了右图。这个操作可以用图的泛洪算法来实现。( )

{{ select(17) }}
- 对
- 错
第 3 题 假设一棵完全二叉树共有 个节点,则树的深度为log(N)+1log(N)+1log(N)+1 。( ) {{ select(18) }}
- 对
- 错
第 4 题 给定一个数字序列 A1,A2,A3,...,An ,要求 i 和 j ( 1<=i<=j<=n ),使 Ai+…+Aj 最大,可以使用动态规划方法来求解。( ) {{ select(19) }}
- 对
- 错
第 5 题 若变量 x 为 double 类型正数,则 log(exp(x)) > log10(x) 。( ) {{ select(20) }}
- 对
- 错
第 6 题 简单有向图有 n 个顶点和 e 条弧,可以用邻接矩阵或邻接表来存储,二者求节点 u 的度的时间复杂度一样。( ) {{ select(21) }}
- 对
- 错
第 7 题 某个哈希表键值 x 为整数,为其定义哈希函数 H(x)=x%p ,则 p 选择素数时不会产生冲突。( ) {{ select(22) }}
- 对
- 错
第 8 题 动态规划只要推导出状态转移方程,就可以写出递归程序来求出最优解。( ) {{ select(23) }}
- 对
- 错
第 9 题 广度优先搜索(BFS)能够判断图是否连通。( ) {{ select(24) }}
- 对
- 错
第 10 题 在C++中,如果定义了构造函数,则创建对象时先执行完缺省的构造函数,再执行这个定义的构造函数。() {{ select(25) }}
- 对
- 错