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

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

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

姓名: ____________________   日期: ____________

1.简单

栈的 peek(或 top)操作做什么?

  1. A返回栈顶元素但不删除它
  2. B删除栈顶元素并返回它
  3. C返回栈底元素
  4. D删除栈中所有元素
2.简单

一棵有 n 个节点的树有多少条边?

  1. A2n
  2. Bn + 1
  3. Cn
  4. Dn − 1
3.简单

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

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

在存储于容量为 n 的数组中的循环队列里,下标 i 之后的下一个位置如何计算?

  1. A(i + 1) mod n
  2. B2i + 1
  3. Ci + 1
  4. D(i − 1) mod n
5.中等

如何在二叉搜索树中找到最小的键?

  1. A只看根
  2. B从根开始沿左子节点走,直到没有左子节点为止
  3. C访问每个叶子并进行比较
  4. D从根开始沿右子节点走,直到没有右子节点为止
6.中等

把键 50、30、70、20、40 按此顺序插入一棵空的二叉搜索树。30 的左子节点是什么?

  1. A40
  2. B50
  3. C70
  4. D20
7.困难

双重哈希主要减轻了线性探测的哪个问题?

  1. A一次聚集,即形成长串的被占用槽位
  2. B需要哈希函数
  3. C读取键值需要 O(n) 的代价
  4. D需要在表中存储键
8.困难

把键 5、3、8、1 按此顺序插入一个空的基于数组的二叉最小堆。最终的数组是什么?

  1. A[1, 3, 5, 8]
  2. B[3, 1, 8, 5]
  3. C[1, 3, 8, 5]
  4. D[1, 5, 8, 3]

答案

  1. 1. A · 返回栈顶元素但不删除它
  2. 2. D · n − 1
  3. 3. C · 队列
  4. 4. A · (i + 1) mod n
  5. 5. B · 从根开始沿左子节点走,直到没有左子节点为止
  6. 6. D · 20
  7. 7. A · 一次聚集,即形成长串的被占用槽位
  8. 8. C · [1, 3, 8, 5]

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