《数据结构》教学大纲.doc
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
业分时时毗课学适学周总
《数据结构》教学大纲:计算机信息管理、电子简务
:4
:68 (理论52 +实践16)
一、课程的性质与任务
《数据结构》是计算机应用专业的一门专业基础课,主要任务是讨论各种数据纟I[织中的数据逻辑结构,存储结构以及有关操作的算法。
目的是使学生学会分析研究计算机加工的数据结构的特性,以便为应用涉及的数据选择适当的逻辑结构、存储结构及相应的算法,并初步了解对算法的时间分析和空间分析技术。
另一方面,通过对本课程算法设计和上机实践的训练,述应培养学生的数据抽象能力和程序设计的能力。
二、课程的基本要求
先行课:《计算机应用基础》,《C语言程序设计》或《C++语言程序设计》。
三、课程内容
大纲内容(按章节详细列出)
教学目的和要求:经过一学期的学习,掌握数据结构的一些基础知识和基本要点,掌握重要数据结构的概念、使用方法及实现技术,使学生学会分析研究计算机加工的数据结构的特性,以便为应用涉及的数据选择适当的逻辑结构、存储结构及相应的算法,学会做简单的算法分析,包括算法的吋间代价和空间代价,为后续计算机专业课程的学习打下坚实的基础。
《数据结构》是实践性很强的课程,不仅要学习基本理论知识,更要注重丄机实践,通过上机实践验证算法的止确性,掌握和巩固所学理论知识,培养学生的数据抽象能力和程序设计的能力。
第一章绪论
教学目的和要求:掌握数据结构的基本概念,了解抽彖数据类型,了解算法时间复杂度和空间复杂度的分析,了解算法的描述方法。
1.1概念和术语
1.2算法描述与分析
第二章线性表
教学目的和要求:了解线性衣的基本概念和类型定义,熟练掌握顺序存储的线性表和单链表的算法设计及其程序实现;掌握循环链表和双向链表的操作。
2」线性表的基本概念和类型定义
2.2线性表的顺序存储结构
2.3顺序表上的基本运算
2.4线性表的链接存储结构
2.4.1单链表的杳找、插入和删除
2.4.2循环链表
2.4.3双向链表
2.4.4线性表顺序存储结构和链式存储结构
2.5应用举例
注:建议将字符串处理作例子加入教学内容。
第三章栈和队列
教学目的和要求:掌握栈和队列的定义,熟练掌握顺序和链接存储的栈和队列的算法设计及其程序实现,了解栈和队的各种应用。
3.1栈
3.1.1栈的定义和操作
3.1.2栈的顺序存储结构
3.1.3栈的链式存储结构
3.2栈的应用举例
321 表达式求值
3.2.2递归的实现
3.3队列
3.3.1队列的定义和操作
3.3.2队列的顺序存储结构
3.3.3队列的链式存储结构
第四章串
教学目的和要求:掌握字符串的抽彖数据类型;字符串操作的实现;字符串的模式匹配。
4」串的基本概念和存储结构
4.2串的基本运算
4.3串的模式匹配算法
4.3.1求子串位置的定位函数
4.3.2模式匹配的一种改进算法
4.4汉字串
第五章数组和广义表
教学目的和要求:掌握稀疏矩阵的定义和各种存储结构,掌握广义表的定义、存储结构和求广义表的长度及深度的算法,掌握稀疏矩阵的转置和相加的方法并了解其算法,掌握建立广义衣和输出广义表的方法并了解其算法。
5.1数纽•及其运算
5.2数组的顺序存储结构
5.3 矩阵的压缩存储
广义表
5.4.1广义表的定义
5.4.2广义表的存储结构
5.4.3广义表的运算
第六章树
教学目的和要求:掌握树的定义、性质、存储结构;熟练掌握二叉树的遍历算法及英实现;了解树和二叉树的转换。
6.1树的基本概念和术语
6.2二叉树
6.2.1二叉树的定义
6.2.2二叉树的性质
6.2.3二叉树的存储结构
6.2.4遍历二叉树
6.2.4.1遍历二叉树的定义及递归算法
6.2.4.2按前序序列建二叉数
6.2.4.3遍历二叉树的非递归算法
6.3树和森林
6.3.1树的存储结构
6.3.2森林与二叉树的转换
6.3.3树和森林的遍历
6.4哈夫曼树
6.4.1基本术语
6.4.2构造哈夫曼树
6.4.3哈夫曼编码
6.4.4哈夫曼算法的实现
第七章图
教学目的和要求:掌握图的定义和术语;熟练掌握图的存储结构及深度和广度搜索算法及其实现;了解最短路径算法;掌握拓扑排序算法。
7」图的概念和术语
7.2图的存储•结构
7.3图的遍历
7.3.1深度优先搜索遍历
7.3.2广度优先搜索遍历
7.4图的应用
7.4.1生成树和最小生成树
7.4.2拓扑排序
7.4.3最短路径
7.4.3.1求从一个顶点到其他各顶点的垠短路径7.432求每一对顶点之间的
最短路径
第八章查找
教学目的和要求:熟练掌握静态杳找表的查找算法及其实现,熟练掌握二叉排序树的插入和杳找算法及英实现;掌握哈希表的造表方法;了解各种哈希函数和处理冲突的方法。
&1 检索的基本概念
8.2线性表的检索(静态查找表)
821 顺序检索
8.2.2折半检索
8.2.3分块检索
8.3树衣的检索(动态杏找)
8.3.1二叉排序树
8.3.2平衡的二叉检索树
8.4散列农
8.4.1Hash检索技术
8.4.2哈希表的检索及分析
第九章排序
教学目的和要求:熟练掌握简单的排序方法的算法设计及英实现;掌握快排序和堆排序算法;了解外排序方法;掌握各种排序的特点、时间复杂度和空间复杂度。
9」排序的基本概念
9.2三种简单排序方法
9.2.1直接插入顺序
9.2.2冒泡排序
9.2.3简单选择排序
9.3快速排序
9.4堆排序
9.5归并排序
9.6基数排序
9.7内部排序方法的比较和选择
第十章文件
教学目的和要求:掌握各种文件的组织方式和操作方法。
10.1文件的基本概念
10.2顺序文件
10.3索引文件和索引顺序文件
10.4哈希文件
10.5倒排文件
四、学时分配
教学时间分配表
五、作业内容
1.教材每章后而习题
2.每章实习内容
六、实验。