1 条题解
-
0
参考答案与详细解析
一、 单项选择题
-
C。 解析:
'b'的 ASCII 码是 98 ()。4 是 。异或运算^:。ASCII 102 对应字符'f'。 -
C。 解析:
p + a是一个算术表达式的结果(右值),不能被赋值。指针变量p可以被赋值(如 D),指针指向的内容*p可以被赋值(如 A, B)。 -
B。 解析:构造派生类对象时,会先调用基类的构造函数,再调用派生类的构造函数。
-
D。 解析:
arr大小为 5(下标 0-4)。p = arr + 2指向arr[2]。p[3]相当于*(p+3)即arr[5]。数组越界访问,属于未定义行为,可能输出垃圾值或导致运行时异常。 -
A。 解析:完全二叉树深度公式为 。
-
D。 解析:根据图示结构(A为根,B、C为第二层,D、E为第三层,且看起来是层序排列),广度优先遍历(层序遍历)顺序为 A -> B -> C -> D -> E。
-
A。 解析:深度优先搜索(DFS)通常借助栈(或递归调用栈)实现,广度优先搜索(BFS)才借助队列。
-
B。 解析: 个顶点的简单有向图最多有 条边。
- 。
- 。 所以至少 6 个顶点。
-
D。 解析:直接覆盖旧元素会导致数据丢失,不是解决冲突的合理方案(除非特定场景如缓存替换,但在哈希表语境下通常指开放定址或链地址)。
-
B。 解析:动态规划的时间复杂度通常为 状态数 状态转移的代价,不仅仅是状态个数。
-
A。 解析:这是记忆化搜索求斐波那契数列。 。 。
-
D。 解析:由于使用了数组
rec_fib进行记忆化,每个fib(n)只计算一次,总时间复杂度为 。 -
C。 解析:这是标准的二分查找算法,时间复杂度为 。
-
A。 解析:这是线性筛(欧拉筛)算法,每个合数只被其最小质因子筛去一次,时间复杂度为 。
-
B。 解析:BFS 必须按层级访问。
- 第一层:1。
- 第二层:2, 4(1的邻居)。
- 第三层:3, 5, 7(2和4的邻居)。
选项 B 中
1, 2, 5...,5 是第三层节点,4 是第二层节点。BFS 不可能在访问完第二层的 2 之后直接访问第三层的 5,而跳过同层的 4。
二、 判断题
- A (正确)。。类型为
int。 - A (正确)。指针可能指向非法内存(野指针、空指针解引用等)。
- B (错误)。快速排序最差情况(数组已有序且 pivot 选择不当)时间复杂度为 。
- A (正确)。
long long通常 8 字节,float通常 4 字节。 - B (错误)。
pow函数返回double类型,不是int。 - A (正确)。二叉排序树(BST)的中序遍历结果是递增有序序列。
- A (正确)。根据鸽巢原理,元素数量超过哈希表容量(或负载因子限制)时必然发生冲突。
- B (错误)。构造函数不能声明为虚函数(因为构造时虚表指针尚未完全建立),析构函数可以且推荐声明为虚函数。
- B (错误)。动态规划可以使用**递推(迭代)**实现,不一定非要递归。
- B (错误)。导航通常需要带权图(表示距离或时间),且两个城市间可能有多条路(重边),简单图无法完全满足需求。
-
- 1
信息
- ID
- 12669
- 时间
- 1000ms
- 内存
- 256MiB
- 难度
- 10
- 标签
- (无)
- 递交数
- 3
- 已通过
- 0
- 上传者