1.简单
删除队首元素的队列操作叫什么?
- ADequeue
- BPush
- CInsert
- DEnqueue
2.简单
双向链表中的每个节点包含什么?
- A只有数据和指向下一个节点的指针
- B两份数据和一个指针
- C数据和两个指针,一个指向下一个节点,一个指向再下一个节点
- D数据、指向下一个节点的指针和指向前一个节点的指针
3.简单
对树进行层序遍历时使用哪种数据结构?
- A哈希表
- B优先队列
- C队列
- D栈
4.中等
循环缓冲区(环形缓冲区)通常用于实现:
- A二叉搜索树
- B哈希函数
- C固定大小的队列
- D图的遍历
5.中等
如何向二叉堆中插入一个新元素?
- A从头重建整个堆
- B通过把所有更大的元素右移一位,将它插入到有序位置
- C把它放在数组末尾,只要它违反堆性质就将其上浮(sift up)
- D把它放在根上,再将其下沉(sift down)
6.中等
一棵高度为 h(以边数计)的满二叉树有多少个节点?
- A2h+1 − 1
- B2h
- C2h + 1
- Dh2
7.困难
对于键互不相同的二叉树,哪一对遍历序列总能唯一确定这棵树?
- A仅前序
- B前序和后序
- C前序和中序
- D仅层序
8.困难
向 AVL 树插入一个键后,某节点的左子树过高,而新键插入到了其左子节点的左子树中(左左情况)。应采用哪种修正?
- A对该节点及其子节点重新着色
- B先在子节点处左旋,再在该节点处右旋
- C在失衡节点处进行一次右旋
- D在失衡节点处进行一次左旋
答案
- 1. A · Dequeue
- 2. D · 数据、指向下一个节点的指针和指向前一个节点的指针
- 3. C · 队列
- 4. C · 固定大小的队列
- 5. C · 把它放在数组末尾,只要它违反堆性质就将其上浮(sift up)
- 6. A · 2h+1 − 1
- 7. C · 前序和中序
- 8. C · 在失衡节点处进行一次右旋
完整分步解答:请在 examproblems.com 上练习本主题。