1 条题解
-
1
一、单项选择题解析
-
A |
bool类型默认用cout输出时,false输出为0。 -
C | ,,和为 。
-
A |
a += b会先将 改为 ,表达式值也是 ,随后再次输出 ,所以为7 7。 -
C | 若先弹出 ,栈中从顶到底为 ,此时不能直接弹出 。
-
B | 删除 p 的直接后继结点,本质是让 p 的 next 跳过原来的下一个结点。
-
C | 设叶子数为 ,有两个孩子的结点数为 ,满足 。总结点数 ,所以 。
-
A | 拓扑序要求每条有向边的起点都出现在终点之前,只有选项 A 满足所有约束。
-
C | 先计算 ,再乘以 ,最后加上 ,后缀表达式为
abc-d*+。 -
C | 哈夫曼合并过程为 ,,,频率为 的字符深度为 。
-
B | 根为 ,左子树由 构成,右子树由 构成,后序遍历为 。
-
C | , 个元素最坏情况下最多比较 次。
-
A | 外层 依次为 ,内层次数约为 ,总复杂度为 。
-
B | 至少 名女生,方案数为 。
-
C | ,,。
-
C |
return是 C++ 关键字,不能作为变量名。
二、阅读程序解析
阅读程序(一)
函数
f统计整数二进制表示中 的个数;函数g从 开始不断乘 ,直到再乘 会超过 ,因此返回不超过 的最大 的幂。-
A(正确) | 输入 ,,,输出
2 8。 -
A(正确) | 若 是 的正整数次幂,则二进制表示只有 个 ,。
-
A(正确) | 函数不断将 乘 ,直到 ,返回的 就是不超过 的最大 的幂。
-
B | ,有 个 ,,输出
8 1024。 -
C | 函数
f和g的循环次数都与 成正比,时间复杂度为 。
阅读程序(二)
函数
f枚举两个字符串的起点,再向后比较连续相同的长度,求的是最长公共子串长度;函数g从两端向中间比较,判断字符串是否为回文串。-
A(正确) | 函数
f通过枚举起点并扩展匹配长度,确实求的是最长公共子串长度。 -
A(正确) | 若两个字符串完全相同,则从起点 开始可以匹配整个字符串长度。
-
A(正确) | 函数
g从两端向中间逐对比较字符,是标准的回文判断方法。 -
B |
abca和bcab的最长公共子串是bca,长度为 ;abcabc不是回文串,g返回 。 -
C |
abc和cba的最长公共子串长度为 ;abccba是回文串,g返回 。 -
D | 两层循环枚举起点 ,内层
while最多扩展 次,总复杂度 。
阅读程序(三)
转移条件是
a[j] <= a[i],因此求的是最长不下降子序列,而不是最长严格上升子序列。 表示以第 个元素结尾时的最优长度。-
B(错误) | 转移条件是
a[j] <= a[i](允许相等),求的是最长不下降子序列,不是严格上升。 -
A(正确) | 若所有数相等,任意子序列都是不下降的,以第 个数结尾的最长不下降子序列长度为 ,最大值为 。
-
A(正确) | 的定义就是以第 个数结尾的最长不下降子序列长度。
-
C | 输入
3 1 2 2 1 4,最长不下降子序列为1 2 2 4,长度为 。 -
B | 输入
5 4 3 2 1 1 1,最长不下降子序列为1 1 1,长度为 。 -
B | 输入
2 1 3 2 4 3 5 4,最长不下降子序列为1 2 3 4或1 2 3 5等,长度为 。
三、完善程序解析
完善程序(一)
这是归并过程。两个数组都还有元素时,比较当前元素,把较小者放入结果数组;某一边用完后,再把另一边剩余元素依次加入。
-
C | ① 处是主循环条件,两个数组都还有元素时才继续比较,应填
i <= n && j <= m。 -
A | ② 处判断哪个元素更小,升序合并应填
a[i] <= b[j]。 -
B | ③ 处是
a[i]更小时的操作,应将a[i]放入结果数组,填c[++k] = a[i++]。 -
C | ④ 处是处理
b数组剩余元素的条件,应填j <= m。 -
D | ⑤ 处是将
b数组剩余元素加入结果,应填c[++k] = b[j++]。
完善程序(二)
这是最长公共子序列动态规划。若 ,则可以由 转移并加 ;否则从去掉 当前字符或去掉 当前字符两种情况中取最大值。
-
B | ① 处是外层循环上界,遍历字符串 ,应填
n。 -
C | ② 处是内层循环上界,遍历字符串 ,应填
m。 -
B | ③ 处判断字符是否相等,注意下标从 开始,应填
a[i - 1] == b[j - 1]。 -
C | ④ 处是字符不相等时的转移,取两种情况的最大值,应填
max(dp[i - 1][j], dp[i][j - 1])。 -
D | ⑤ 处输出最终结果,最长公共子序列长度存储在
dp[n][m]。
-
信息
- ID
- 8263
- 时间
- 1000ms
- 内存
- 256MiB
- 难度
- 8
- 标签
- 递交数
- 219
- 已通过
- 29
- 上传者