第一章绪论[考试要求]
本章要求学生熟悉和了解数据结构的基本概念和述语,了解数据结构的研究内容和地位,掌握数据的逻辑结构和存储结构,算法的特点以及算法分析的度量方法。
[考试内容]
1. 数据结构的基本概念;
2. 逻辑结构和存储结构的定义、划分;
3. 算法的特性;
4. 算法的时间复杂度计算方法;第二章基本的线性表
[考试要求]
掌握线性表的定义和特点;重点掌握顺序表的表示和实现;重点掌握线表的表示和实现。
[考试内容]
1. 顺序表的地址计算;
2. 顺序表的类型定义;
3. 顺序表的初始化、插入、删除、查找以及各算法的时间复杂度计算方法;
4. 链表的类型定义;
5. 单链表的初始化、插入、删除、查找以及各算法的时间复杂度计算方法;
6. 顺序表和链表的优缺点对比;
第三章 受限的线性表——栈和队列[考试要求]
了解栈和队列的概念、操作特点;掌握顺序栈的定义、入栈和出栈操作的实现;掌握顺序队列的定义、入队和出队操作的实现;掌循环队列的基本操作;
[考试内容]
1. 栈和队列的操作特点;
2. 顺序栈的类型定义;
3. 顺序栈的初始化、判空、入栈和出栈操作的实现;
4. 栈的应用,如数制转换、括号匹配;
5. 顺序队列的入队和出队操作的实现;
6. 循环队列的判空、判满、出队、入队、求长等操作的表达式表示;第六章线性结构的推广——数组和广义表
[考试要求]
了解数组和广义表的概念、非线性特点;掌握数组的运算、特殊矩阵的压缩存储、广义表的基本运算;
[考试内容]
1. 数线的运算;
2. 对称矩阵、三角矩阵的压缩存储运算;
3. 三元组表的类型定义、转置操作;
4. 广义表的概念、基本运算;第七章树和二叉树
[考试要求]
熟悉树型结构的特点;了解树和二叉树的特点区别;掌握二叉树的性质、顺序和链式存储方式的表示和实现;掌握树、森林与二叉树之间的转换;掌哈夫曼树的应用;
[考试内容]
1. 二叉树的性质;
2. 二叉树的顺序存储方式;
3. 二叉树的链式存储方式;
4. 二叉树的遍历操作、线索化操作;
5. 树、森林、二叉树之间的转换;
6. 哈夫曼树的定义、构造方法及哈夫曼树的编码和解码;第八章图
[考试要求]
了解图的定义、基本概念、基本操作特点;掌握图的存储结构、图的遍历、小生成树、拓扑排序、关键路径、短路径等问题;
[考试内容]
1. 图的基本术语;
2. 图的邻接矩阵、邻接表存储结构的实现;
3. 图的深度优先遍历和广度优先遍历;
4. 小生成树的概念及构造方法;
5. 拓扑排序的主法、关键路径应用;
6. 单源矩路径算法;第 9 章高效查找
[考试要求]
熟悉查找的基本概念;掌握查找算法的基本思想以及查找效率的运算方法;[考试内容]
1. 顺序查找、拆半查找、分块查找;
2. 二叉排序树的构造、查找;
3. 平衡二叉排序的构造;
4. 散列查找函数的构造、解决冲突的方法;
第 10 章优化排序[考试要求]
熟悉排序的基本概念;掌握排序算法的基本思想以及排序算法的时间效率的运算;[考试内容]
1. 插入排序、拆半插入、希尔排序;
2. 冒泡排序、快速排序;
3. 直接选择排序、堆排序;
4. 归并排序;