数据结构(802)考试大纲
一、概述
- 熟悉数据结构相关术语的含义,掌握基本概念
- 掌握数据结构中逻辑结构、存储结构以及两者之间的关系
- 了解抽象数据类型的定义和表示方法
- 掌握计算语句频度和估算算法时间复杂度的方法
二、线性数据结构--线性表、栈、队列和串
- 理解线性表的逻辑结构定义
- 熟悉抽象数据类型定义方式
- 熟练掌握线性结构的顺序和链式存储结构
- 掌握线性表、栈和队列的应用,理解各种线性结构之间的关系
- 熟悉串的逻辑结构和典型存储方式,理解串的主要运算
- 熟练掌握在顺序和链式存储结构上实现相关基本的操作
三、数组和广义表
- 掌握数组的逻辑特征与存储方式
- 掌握矩阵的压缩存储方式及其特点
- 理解广义表的逻辑特征和存储方式
- 掌握广义表的基本操作
四、树和二叉树
- 熟练掌握二叉树的基本性质
- 熟练掌握二叉树的各种存储结构的实现,各存储结构的特点及适用范围
- 熟练掌握二叉树各种遍历策略的递归算法
- 熟练掌握基于遍历策略的二叉树操作及应用
- 树(森林)与二叉树的关系(存储)
- 了解最优树的特性,掌握建立最优树和哈夫曼编码的方法
五、图
- 掌握图的定义及其它基本概念
- 掌握图的存储结构--邻接矩阵、邻接表
- 掌握图的遍历方法--深度优先搜索、广度优先搜索
- 掌握最小生成树生成方法
- 掌握图的最短路径算法
- 了解拓扑排序概念,了解关键路径算法
六、查找(检索)
- 掌握静态查找表--顺序表、有序表、索引表的查找算法;理解算法复杂性的分析过程;熟悉算法特点
- 掌握动态查找表--二叉排序树和平衡二叉树的概念、基本操作及其实现
- 理解B树的概念和特点
- 熟练掌握哈希查找思想、哈希冲突解决方法、哈希查找性能
七、排序
- 掌握直接插入排序、希尔排序、冒泡排序、简单选择排序的思想及实现方法
- 掌握快速排序、堆排序、归并排序的思想及实现方法
- 掌握算法复杂度及其分析方法;熟悉算法特点及其适用场景
八、文件
- 了解与文件有关的基本概念
- 理解文件结构及其组织方式--顺序、索引、散列文件(Hash)