绪论(2学时)
知识点:数据结构的基本概念和术语;数据结构在软件系统中的作用;课程的研究、学习内容和方法。
重点:
数据结构的逻辑结构、存储结构及数据操作的概念及相互关系。
难点:数据结构的逻辑结构、存储结构及数据操作之间的相互关系。
线性表(4学时):知识点:线性表的逻辑结构、各种存储结构、基本操作(算法)的实现及性能分析;不同存储结构的比较;线性表的应用算法。
线性表的逻辑结构和各种存储表示方法,以及定义在逻辑结构上的各种基本操作及其在存储结构上如何实现这些基本操作
重点:熟炼掌握顺序表和单链表上实现的各种基本算法及相关的时间性能分析。
难点:能够使用本章所学到的基本知识设计有效算法解决与线性表相关的应用问题。
栈与队列(4学时)
知识点
栈和队列的逻辑结构定义;
在两种存储结构上实现栈和队列的基本操作;
栈和队列的本质区别;
栈和队列的应用 ;
重点
掌握栈和队列在两种存储结构上实现的基本操作;
栈和队列的本质区别;
栈和队列的应用。
难点
循环队列中对边界条件的处理;
在什么样的情况下能够使用栈或队列 。
串(2学时)
知识点
串的逻辑结构、存储结构及其上的基本操作;
串的模式匹配算法。
重点
串的模式匹配算法。
难点
串的模式匹配算法。
多维数组和广义表(2学时)
知识点
多维数组的逻辑结构特征及其存储方式;
特殊矩阵和稀疏短阵的压缩存储方法;
广义表的概念和性质。
重点
多维数组的存储方式、矩阵的压缩存储方式;
广义表的定义及其性质。
难点
稀疏矩阵的压缩存储表示下实现的算法。
树(12学时)
知识点
二元树的定义、性质、存储结构、遍历、线索化;
树的定义、存储结构、遍历;
树和森林与二元树的转换;
树(森林)与二元树的应用(哈夫曼树及其应用、集合表示与等价分类、表达式求值)。
重点
掌握二元树的遍历算法及其有关应用。
难点
设计解决与树或二元树相关的应用问题的有效算法。
图及其相关算法(14学时)
知识点
(无向和有向图)的基本概念;
两种常用的存储结构;
两种遍历算法;
图的应用算法(最小生成树算法、关节点和双连通分量算法、强连通性判定和求双连通分量的算法、拓扑分类算法、关键路径算法、最短路经算法等)。
重点
图的存储结构和遍历算法。
难点
有关图的应用算法。
查找(4学时)
知识点
在线性表、树结构和散列表上进行查找的基本思想和方法
查找算法的实现以及各种查找方法的时间性能(平均查找长度)分析;
基于关键字的查找与基于关键字散列地址的查找的本质区别
重点
顺序查找、二分查找,二元查找树上查找以及散列表上查找的基本思想、算法实现和性能分析。
难点
散列表。
查找算法的性能分析
排序(6学时)
知识点
内部排序方法的基本思想、排序过程、算法实现、时间和空间性能的分析;
各种排序方法的比较和选择;
外部排序的一般过程;
适合外存特点的归并排序的关键技术。
重点
掌握快速排序、堆排序、归并排序和基数排序的基本思想及排序过程;
外部排序的选择树算法。
难点
快速排序、堆排序、归并排序和基数排序算法的时间和空间复杂性及其分析方法。
文件(2学时)
知识点
存储在外存上的文件的有关概念;
文件的各种组织方法及特点;
查询和更新操作算法及其特征。
重点
文件的各种组织方法及特点。
难点
文件各种组织形式的综合应用。