1、数据结构【考查目标】1、掌握数据结构的基本概念、基本原理和基本方法。2、掌握数据的逻辑结构、存储结构及基本操作的实现,了解各种典型数据结构的应用,能够对算法进行基本的时间复杂度与空间复杂度的分析。3、能够选择并设计合适的数据结构及相应的算法对问题进行分析与求解,具备采用 C 或 C+或 JAVA 语言设计与实现算法的能力。 【考查内容】一、数据结构与算法分析的基本概念(一)数据结构的基本概念(二)渐近算法分析方法(三)时间复杂度(四)空间复杂度二、线性表、栈和队列(一)线性表的定义和基本操作的设计(二)线性表的顺序存储结构和链式存储结构实现(三)线性表的应用 (四)栈和队列的基本概念和基本操作
2、的设计(五)栈和队列的顺序存储结构和链式存储结构实现(六)栈和队列的应用三、二叉树和树(一)二叉树1、二叉树的定义及其主要特征2、二叉树的顺序存储结构和链式存储结构实现3、二叉树的遍历及应用4、二叉排序(查找、检索)树5、平衡的二叉检索树- AVL 树6、哈夫曼(Huffman)树和哈夫曼编码 (二)树1、树的定义与术语2、树的遍历3、树的顺序存储结构和链式存储结构实现四、图(一) 图的基本概念(二) 图的存储及基本操作1、 邻接矩阵法2、 邻接表法(三) 图的遍历1、 深度优先搜索2、 广度优先搜索(四) 图的应用1、拓扑排序2、关键路径3、 最短路径4、最小(代价)生成树 五、 查找(一)
3、 查找的基本概念(二) 顺序查找法(三) 折半查找法(五) 散列(Hash)表及冲突解决策略(六) 查找算法的分析及应用 六、 内排序(一) 排序的基本概念(二) 直接插入排序(三) 冒泡排序(bubble sort)(四) 简单选择排序(五) 希尔排序(shell sort)(六) 快速排序(七) 堆排序(八) 二路归并排序(merge sort)(九) 基数排序(十) 各种内排序算法的比较(十一) 内排序算法的应用 【参考书籍】1、Clifford A. Shaffer 著,张铭、刘晓丹等译,数据结构与算法分析(C+ 版)(第二版),电子工业出版社。2、严蔚敏、吴伟民著,数据结构(C 语言版),清华大学出版社