1、绪论
(1)基本概念和术语
(2)数据结构和数据类型的区别
(3)抽象数据类型的表示和实现
(4)算法的相关概念
(5)时间复杂度和空间复杂度的概念和分析
2、线性表
(1)线性表的类型定义
(2)顺序表,主要包括:顺序表的特点、顺序表的存储结构的定义、顺序表的常见操作、顺序表的合并、利用顺序表解决简单的应用问题。
(3)链表,主要包括:链表的定义、链表的存储结构的定义、链表的常见操作、链表的合并、顺序表和链表的比较、利用链表解决简单的应用问题。
3、栈和队列
(1)栈,主要包括:栈的定义、栈的存储结构、栈的基本操作、栈的应用。
(2)栈与递归,主要包括:递归的定义、递归算法、递归的应用。
(3)队列,主要包括:队列的定义、队列的存储结构、队列的常见操作。
4、树
(1)树的定义和术语。
(2) 二叉树,主要包括:二叉树的定义、二叉树的性质、 二叉树的遍历、二叉树的建立和应用。
(3)树和森林,主要包括:树的存储结构、树和森林与二叉树之间转换、树和森林的遍历、树和森林与二叉树之间转换。
(4)赫夫曼树,主要包括:赫夫曼树的定义、赫夫曼算法、赫夫曼树编码、赫夫曼树应用。
5、图
(1)图的定义和基本概念
(2)图的存储,主要包括:数组表示法、邻接表、图的存储结构的对比。
(3)图的常见操作,主要包括:图的建立、度的计算、深度优先遍历、广度优先遍历等。
(4)图的连通性问题,主要包括:用Prim求小生成树、用Kruskal求小生成树。
(5)有向无环图,主要包括:拓扑排序算法、关键路径。
(6)短路径,主要包括:短路径定义和算法。
6、查找
(1)静态查找,主要包括:相关概念、顺序查找、二分查找。
(2)动态查找,主要包括:二叉排序树、 树。
(3)哈希查找,主要包括:哈希表定义、哈希表的构造、哈希查找的分析。
7、排序
(1)排序的定义与相关概念。
(2)插入排序,主要包括:直接插入排序、希尔排序。
(3)交换排序,主要包括:起泡排序、快速排序。
(4)选择排序,主要包括:简单选择排序、树形选择排序、堆排序。
(5)归并排序