算法1-期末测试
该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。
一、选择题(每题 2 分,共 20 分)
(一)单选题(每题 2 分,共 10 分)
1.二分查找算法的核心适用条件不包括以下哪一项?( ) {{ select(1) }}
- 待查找序列必须有序
- 待查找序列必须是连续存储结构
- 待查找序列元素必须是整数类型
- 待查找序列支持随机访问
2.以下关于贪心算法的描述,正确的是( ) {{ select(2) }}
- 贪心算法总能得到全局最优解
- 贪心算法的选择只依赖于当前局部最优
- 贪心算法的时间复杂度一定是 O(n)
- 贪心算法不需要任何前提条件即可使用
3.大整数加减法的核心处理要点是( ) {{ select(3) }}
- 直接使用编程语言的整数类型存储计算
- 按位拆分后从高位到低位逐位运算
- 处理进位和借位问题
- 无需考虑正负号的特殊处理
4.模拟算法的核心思想是( ) {{ select(4) }}
- 用数学公式直接推导结果
- 按照问题的实际流程逐步模拟执行
- 优先选择最优子结构
- 通过二分策略简化问题
5.以下哪种场景最适合使用贪心算法解决?( ) {{ select(5) }}
- 最长公共子序列问题
- 背包问题(物品可分割)
- 最短路径问题(有负权边)
- 汉诺塔问题
(二)多选题(每题 2 分,共 10 分)
6.以下属于二分查找典型应用场景的有( ) {{ multiselect(6) }}
- 有序数组中查找目标值是否存在
- 查找有序数组中目标值的首次出现位置
- 无序数组中查找最大值
- 求解满足条件的最小阈值
7.大整数乘法与加减法相比,额外需要处理的问题有( ) {{ multiselect(7) }}
- 部分乘积的累加
- 每一位相乘后的进位传递
- 结果的前导零去除
- 数位对齐方式
8.二维数组模拟的常见应用场景包括( ) {{ multiselect(8) }}
- 矩阵的遍历与变换
- 棋盘类问题模拟
- 字符串替换操作
- 图的邻接矩阵表示
9.贪心算法在解决区间问题时,常用的排序策略有( ) {{ multiselect(9) }}
- 按区间左端点升序排序
- 按区间右端点升序排序
- 按区间长度降序排序
- 按区间中点位置排序
10.字符串模拟的注意事项包括( ) {{ multiselect(10) }}
- 索引越界问题
- 字符编码转换
- 空字符串处理
- 字符串拼接的效率问题