数据结构练习卷(附答案)

免费可打印的数据结构练习卷:8 道题,从简单到考试水平,附答案。可打印或另存为 PDF。

教师请注意: 可免费打印、复印并在课堂上使用。每份新练习题都有新的数值和独立的答案。欢迎在课程页面添加指向 ExamProblems 的链接。

姓名: ____________________   日期: ____________

1.简单

删除队首元素的队列操作叫什么?

  1. ADequeue
  2. BPush
  3. CInsert
  4. DEnqueue
2.简单

双向链表中的每个节点包含什么?

  1. A只有数据和指向下一个节点的指针
  2. B两份数据和一个指针
  3. C数据和两个指针,一个指向下一个节点,一个指向再下一个节点
  4. D数据、指向下一个节点的指针和指向前一个节点的指针
3.简单

对树进行层序遍历时使用哪种数据结构?

  1. A哈希表
  2. B优先队列
  3. C队列
  4. D栈
4.中等

循环缓冲区(环形缓冲区)通常用于实现:

  1. A二叉搜索树
  2. B哈希函数
  3. C固定大小的队列
  4. D图的遍历
5.中等

如何向二叉堆中插入一个新元素?

  1. A从头重建整个堆
  2. B通过把所有更大的元素右移一位,将它插入到有序位置
  3. C把它放在数组末尾,只要它违反堆性质就将其上浮(sift up)
  4. D把它放在根上,再将其下沉(sift down)
6.中等

一棵高度为 h(以边数计)的满二叉树有多少个节点?

  1. A2h+1 − 1
  2. B2h
  3. C2h + 1
  4. Dh2
7.困难

对于键互不相同的二叉树,哪一对遍历序列总能唯一确定这棵树?

  1. A仅前序
  2. B前序和后序
  3. C前序和中序
  4. D仅层序
8.困难

向 AVL 树插入一个键后,某节点的左子树过高,而新键插入到了其左子节点的左子树中(左左情况)。应采用哪种修正?

  1. A对该节点及其子节点重新着色
  2. B先在子节点处左旋,再在该节点处右旋
  3. C在失衡节点处进行一次右旋
  4. D在失衡节点处进行一次左旋

答案

  1. 1. A · Dequeue
  2. 2. D · 数据、指向下一个节点的指针和指向前一个节点的指针
  3. 3. C · 队列
  4. 4. C · 固定大小的队列
  5. 5. C · 把它放在数组末尾,只要它违反堆性质就将其上浮(sift up)
  6. 6. A · 2h+1 − 1
  7. 7. C · 前序和中序
  8. 8. C · 在失衡节点处进行一次右旋

完整分步解答:请在 examproblems.com 上练习本主题。