1.简单
向栈顶添加元素的栈操作叫什么?
- APeek
- BPush
- CPop
- DEnqueue
2.简单
作为抽象数据类型,集合(set)的定义性特征是什么?
- A它存储元素且没有重复
- B它按有序方式存储元素
- C它只允许在一端访问
- D它存储键值对
3.简单
哪种操作在数组中很慢,但在链表头部却很快?
- A求定长数组的长度
- B访问第 5 个元素
- C通过索引读取最后一个元素
- D在开头插入元素
4.中等
在二叉最小堆中,extract-min 是如何工作的?
- A把最后一个元素移到根上,再将其下沉
- B删除根,并把所有元素左移一位
- C删除数组的最后一个元素
- D在所有叶子中查找新的最小值
5.中等
循环缓冲区(环形缓冲区)通常用于实现:
- A哈希函数
- B图的遍历
- C固定大小的队列
- D二叉搜索树
6.中等
为什么二叉堆可以不用任何指针而存储在数组中?
- A堆中的元素从不超过 100 个
- B它是完全二叉树,因此位置遵循简单的下标公式
- C数组会自动使键保持有序,因此不需要指针
- D堆中所有的键都相等
7.困难
在简单均匀哈希假设下,在含 n 个键、m 个桶的拉链法哈希表中查找的期望时间是多少?
- AO(m)
- BO(log n)
- CO(1 + α),其中 α = n / m
- DO(n)
8.困难
基数树(压缩字典树)相比普通字典树有什么改进?
- A它只保留每个单词的首字母
- B它把单子节点链合并为一条以字符串标记的边
- C它按频率对每个节点的子节点排序
- D它把每个单词存储在根处的哈希表中,而不是存储在单独的节点中
答案
- 1. B · Push
- 2. A · 它存储元素且没有重复
- 3. D · 在开头插入元素
- 4. A · 把最后一个元素移到根上,再将其下沉
- 5. C · 固定大小的队列
- 6. B · 它是完全二叉树,因此位置遵循简单的下标公式
- 7. C · O(1 + α),其中 α = n / m
- 8. B · 它把单子节点链合并为一条以字符串标记的边
完整分步解答:请在 examproblems.com 上练习本主题。