1.简单
树的高度通常定义为:
- A树中节点的总数,包括根和每个叶子
- B树中叶子的个数
- C从根到叶子的最长路径上的边数
- D根的子节点个数
2.简单
什么是带权图?
- A边数多于顶点数的图
- B存储在磁盘上的图
- C有些顶点因为边更多而比其他顶点更重的图
- D每条边都有一个数值(如代价或距离)的图
3.简单
哈希表的负载因子是什么?
- A从磁盘加载表所需的时间
- B迄今为止的冲突次数
- C已存储元素的个数除以桶的个数
- D桶的个数除以所存储键的平均长度
4.中等
如果按已排序的顺序插入键,含 n 个节点的二叉搜索树在最坏情况下的高度是多少?
- An(退化为链表)
- B√n
- Clog₂ n
- D1
5.中等
链表中哨兵(哑)节点的作用是什么?
- A防止链表增长超过固定的最大节点数
- B存储元素的个数
- C使链表有序
- D通过消除头部或尾部的特殊情况来简化代码
6.中等
在二叉最小堆中,extract-min 是如何工作的?
- A删除数组的最后一个元素
- B删除根,并把所有元素左移一位
- C在所有叶子中查找新的最小值
- D把最后一个元素移到根上,再将其下沉
7.困难
双重哈希主要减轻了线性探测的哪个问题?
- A需要哈希函数
- B读取键值需要 O(n) 的代价
- C一次聚集,即形成长串的被占用槽位
- D需要在表中存储键
8.困难
伸展树(splay tree)在每次访问之后做什么?
- A把被访问的节点移到叶子
- B把整棵树重建成平衡形式
- C对查找路径上的节点重新着色
- D通过旋转把被访问的节点移到根
答案
- 1. C · 从根到叶子的最长路径上的边数
- 2. D · 每条边都有一个数值(如代价或距离)的图
- 3. C · 已存储元素的个数除以桶的个数
- 4. A · n(退化为链表)
- 5. D · 通过消除头部或尾部的特殊情况来简化代码
- 6. D · 把最后一个元素移到根上,再将其下沉
- 7. C · 一次聚集,即形成长串的被占用槽位
- 8. D · 通过旋转把被访问的节点移到根
完整分步解答:请在 examproblems.com 上练习本主题。