了解数据、数据元素、数据结构、逻辑结构、存储结构等基本概念;掌握逻辑结构和存储结构的相互关系;掌握算法及其特性;理解和掌握算法分析的方法。
课时
1.1 数据结构的基本概念
1.2 算法
了解线性表的相关概念及线性表的逻辑结构特点;掌握线性表的顺序存储结构-顺序表的描述方法,以及顺序表基本操作的实现;掌握结点和链表的描述方法,以及线性表的链式存储结构;掌握建立链表的方法及链表基本操作的实现;了解循环链表和双向链表的描述和基本操作的实现。
课时
2.1 线性表概述
2.2 线性表的顺序存储结构-顺序表
2.3 线性表的链式存储结构-链表
2.4 线性表的应用
理解栈的定义及栈的逻辑结构;掌握栈的顺序存储和链式存储以及栈的基本操作实现;理解队列的定义及其逻辑结构;掌握队列的顺序存储和链式存储结构以及队列的基本操作实现;掌握递归定义及递归算法设计。
课时
3.1 栈
3.2 队列
3.3 递归
了解树和二叉树的定义;掌握二叉树的基本性质;了解二叉树的顺序存储结构l 掌握二叉树的链式存储结构、相关操作;掌握二叉树的有关算法并能编程实现;掌握利用遍历序列构造二叉树的规则和具体步骤;掌握哈夫曼树的定义、性质和构造方法;了解哈夫曼曼树的应用;理解树与二叉树的转换;了解树的遍历。
课时
4.1 树
4.2 二叉树
4.3 二叉树的遍历
4.4 线索二叉树
4.5 Huffman树
4.6 树与二叉树的转换
4.7 树的遍历
了解图的有关概念;掌握图的邻接矩阵和邻接表的存储表示方法;掌握图的遍历,深度优先搜索遍历和广度优先搜索遍历的算法;掌握最小生成树的求解过程和算法;掌握求解单源最短路径的算法。
课时
5.1 图的概述
5.2 图的表示和实现
5.3 邻接矩阵图类
5.4 图的遍历
5.5 最小生成树
5.6 最短路径
5.7 工程应用实例
了解排序的基本概念;掌握直接插入排序和希尔排序的基本思想和算法实现,能针对给定的输入实例写出直接插入排序和希尔排序的排序过程;掌握冒泡排序和快速排序的基本思想和算法实现,能针对给定的输入实例写出冒泡排序和快速排序的排序过程;掌握直接选择排序和堆排序的基本思想和算法实现,能针对给定的输入实例写出直接选择排序和堆排序的排序过程;掌握归并排序的基本思想,能针对给定的输入实例写出归并排序的排序过程;了解桶排序和基数排序的基本思想,能针对给定的输入实例写出基数排序的排序过程。
课时
6.1 排序的基本概念
6.2 插入类排序
6.3 交换类排序
6.4 选择类排序
6.5 归并排序
6.6 分配排序
6.7 各种排序算法的性能比较
了解查找、关键字、静态查找、动态查找概念;理解衡量查找算法效率的标准-平均查找长度;掌握静态查找算法-顺序查找、二分查找、插值查找和分块查找;掌握动态查找算法-二叉排序树和平衡二叉树。
课时
7.1 查找的概念
7.2 静态查找
7.3 动态查找
了解哈希表的有关概念;掌握哈希函数的构造方法;掌握哈希冲突解决方法-开放定址法和链表法;掌握哈希表类的设计。
课时
8.1 哈希表基本的概念
8.2 哈希函数构造方法
8.3 哈希冲突解决方法
8.4 哈希表类设计
8.5 哈希表的应用