data-structure-start
CouriourC Lv4

考试要求(823)

一、考试性质

本课程是计算机类专业、网络空间安全专业的专业基础必修课,
其涵盖知识是相关专业研究生开展创新研究必须具备的基础。

二、考查目标

本课程主要考核常见数据结构(线性表、树、图)表示方法、操
作及应用;常用查找技术与排序算法等。

  1. 数据结构和算法设计基础知识,计算机内部数据对象的表示和特性,线性表、树、图等常见数据逻辑结构、存储结构表示及其差异,针对具体问题的模型分析与求解。
  2. 常见数据结构上的基本操作和算法;排序、查找等算法原理及实现;算法的时间复杂度和空间复杂度分析方法。
  3. 综合运用课程知识开展数据结构、算法的设计与分析。

三、适用范围

本考试大纲适用于我校计算机与信息安全学院的081200 计算机科学与技术、083900 网络空间安全、085400 电子信息(01 计算机技术、02 软件工程)专业的硕士研究生招生考试。

四、考试形式和试卷结构

试卷内容结构

  1. 数据结构、算法的基础知识:约20 分;
  2. 数据结构、算法的应用和分析:约80 分;
  3. 数据结构、算法的代码分析、设计和实现:约50 分;
  4. 命题可根据考核需要,对试卷内容结构、题型结构及分值比例做适当调整。

五、考查内容

1. 数据结构与算法绪论

  • 数据结构的基本概念,包括数据的逻辑特点、存储表示;
  • 数据抽象方法,数据结构的抽象数据类型ADT 表示;
  • 算法描述方法、算法精化过程和算法时间、空间复杂度分析方法。

2. 线性表

  • 线性表的逻辑结构和抽象数据类型定义;
  • 线性表的顺序存储和链式存储,线性表创建、插入、删除和查找等基本操作的实现以及算法时间复杂度分析;
  • 能分析不同存储结构的优缺点和适用场合,能分析不同的存储方式对算法性能的影响;
  • 单循环链表、双链表和循环双链表的实现以及应用;
  • 线性表的应用实例分析:一元多项式运算;Josephus 问题;
  • 字符串的逻辑结构、存储结构和模式匹配。

3. 栈和队列

  • 栈和队列的逻辑特点、抽象数据类型;
  • 栈和队列的顺序表示和链接表示,以及基于不同存储结构的基本操作的实现
  • 递归函数的执行过程以及使用栈进行递归函数与非递归函数的转换;
  • 栈的应用:数制转换;迷宫问题;
  • 队列的应用:农夫过河问题;银行业务模拟;密码加密解密问题;
  • 深度优先和广度优先搜索策略的原理、不同之处以及应用场合。

4. 树与二叉树

  • 树与二叉树抽象数据类型、不同存储实现与约束分析;
  • 树与二叉树周游算法及复杂度分析;
  • 最优前缀编码问题及算法分析;
  • 线索二叉树;
  • 二叉排序树表示、操作实现以及时间、空间复杂度分析;
  • 平衡二叉排序树表示、操作实现以及时间、空间复杂度分析;

5. 图

  • 图的抽象数据类型、不同存储结构与适用性分析;
  • 图的深度优先周游和广度优先周游两类策略和实现方法,能基于图的具体存储结构分析周游的处理过程,并分析两类周游算法的复杂度;
  • 面向应用的核心算法实现与分析,包括Prim 和Kruskal 最小生成树算法、Dijkstra 和Floyd 最短路径算法;
  • 面向特定应用的图形态,包括AOV 网和AOE 网。

6. 集合与字典

  • 集合与字典的顺序表示、操作实现以及时间、空间复杂度分析;
  • 字典的散列表示、操作实现以及时间、空间复杂度分析。

7. 排序

  • 插入类排序:直接插入、二分插入和希尔插入排序;
  • 选择类排序:直接选择和堆排序;
  • 交换类排序:冒泡排序和快速排序;
  • 分配类排序:基数排序;
  • 归并类排序:两路归并排序;
  • 各种排序算法时间复杂度、空间复杂度、算法稳定性等方面的综合比较,根据应用场合选择合适的排序算法。

六、参考书目(本校本科生教学用书)

张乃孝,陈光,孙猛. 算法与数据结构(C 语言描述)(第3版),高等教育出版社,2012 年.

 评论