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

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

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

姓名: ____________________   日期: ____________

1.简单

向栈顶添加元素的栈操作叫什么?

  1. APush
  2. BPop
  3. CEnqueue
  4. DPeek
2.简单

在树中,什么是兄弟节点?

  1. A没有子节点的节点
  2. B一个节点及其父节点
  3. C位于不同子树中同一深度的节点
  4. D拥有同一个父节点的节点
3.简单

哪种操作在数组中很慢,但在链表头部却很快?

  1. A求定长数组的长度
  2. B访问第 5 个元素
  3. C通过索引读取最后一个元素
  4. D在开头插入元素
4.中等

一棵二叉树的根为 1,左子节点为 2,右子节点为 3;节点 2 的子节点为 4(左)和 5(右)。后序遍历的结果是什么?

  1. A5 4 3 2 1
  2. B4 2 5 1 3
  3. C4 5 2 3 1
  4. D1 2 4 5 3
5.中等

在平衡二叉搜索树中查找一个键的时间复杂度是多少?

  1. AO(log n)
  2. BO(n log n)
  3. CO(n)
  4. DO(1)
6.中等

哪种冲突解决方法将发生冲突的键存储在同一个桶的列表中?

  1. A拉链法(Separate chaining)
  2. B二次探测(Quadratic probing)
  3. C双重哈希(Double hashing)
  4. D线性探测(Linear probing)
7.困难

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

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

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

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

答案

  1. 1. A · Push
  2. 2. D · 拥有同一个父节点的节点
  3. 3. D · 在开头插入元素
  4. 4. C · 4 5 2 3 1
  5. 5. A · O(log n)
  6. 6. A · 拉链法(Separate chaining)
  7. 7. C · [1, 3, 8, 5]
  8. 8. A · 前序和中序

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