数据结构课程教学大纲

合集下载

数据结构_48学时教学大纲

数据结构_48学时教学大纲

数据结构_48学时教学大纲一、课程概述(2学时)1.1课程名称:数据结构1.2学时安排:总学时48学时1.3先修知识:计算机基础知识、C++编程基础1.4课程性质:必修1.5主要教材:《数据结构与算法分析--C语言描述》1.6教学目标:通过本课程的学习,使学生掌握数据结构的基本概念、基本算法和设计原理,培养学生分析和解决实际问题的能力。

二、课程内容和学时安排(38学时)2.1线性表(6学时)2.1.1线性表的定义和基本操作2.1.2顺序表和链表的实现与应用2.1.3线性表的应用实例分析2.2栈与队列(5学时)2.2.1栈和队列的定义和基本操作2.2.2栈和队列的顺序存储结构和链式存储结构2.2.3栈和队列的应用实例分析2.3树与二叉树(8学时)2.3.1树的基本概念和性质2.3.2二叉树的定义和基本操作2.3.3二叉树的遍历算法2.3.4二叉树的存储结构和实现2.3.5树和二叉树的应用实例分析2.4图(8学时)2.4.1图的基本概念和性质2.4.2图的存储结构和基本操作2.4.3图的遍历算法2.4.4最小生成树算法2.4.5最短路径算法2.4.6图的应用实例分析2.5查找与排序(7学时)2.5.1查找算法的分类和基本原理2.5.2顺序查找和二分查找2.5.3哈希查找2.5.4排序算法的分类和基本原理2.5.5插入排序、选择排序和冒泡排序2.5.6快速排序和归并排序2.5.7查找和排序的应用实例分析三、教学方法和学时分配(6学时)3.1教学方法:课堂讲授、案例分析、编程实践3.2学时分配:理论课32学时,实践课16学时四、考核方式(2学时)4.1考核方式:考试占70%,平时作业和实验占30%4.2考核内容:理论知识和实践能力的综合考核五、教学资源和参考资料(2学时)5.1教学资源:计算机实验室、项目演示设备、教学软件等5.2参考资料:《数据结构与算法分析--C语言描述》、相关网络资源六、其他事项(2学时)。

数据结构课程教学大纲

数据结构课程教学大纲

《数据结构》课程教学大纲课程名称:数据结构(Data Structures)课程编号:CX414120A学分:4总学时:64(48+16)适用专业:计算机科学与技术先修课程:离散数学,C语言程序设计一、课程的性质、目的与任务数据结构是计算机科学与技术专业的一门专业基础课程。

通过课堂教学、课外练习和上机实习,使学生了解数据对象的特性及数据组织的基本方法,并初步具备分析和解决现实世界问题在计算机中的表示方法和及其处理的能力,让学生培养良好的程序设计技能,为后续课程的学习和科研工作的参与打下良好的基础。

二、教学基本要求✧了解线性表、栈、队列、字符串、数组、广义表、树、二叉树、图、查找表等几种数据结构的特性及数据组织的基本方法;✧理解各数据结构上的基础操作方法及复杂度的分析方法;✧掌握各数据结构及查找、排序的基本理论和基本知识,使学生具备从数据结构的角度出发,开发设计出较复杂软件的能力。

三、教学内容第一章绪论(4学时)1.数据,数据类型,数据结构(逻辑结构和存储结构)(1学时)2.数据结构的主要运算与基础知识(1学时)3.算法复杂度分析(2学时)算法的定义、算法的描述、算法设计的要求、算法分析初步第二章线性表(4学时)1.线性表的定义和基本运算(0.5学时)2.线性表的存储结构和实现(3学时)向量(顺序)存储结构、链式存储结构(单链表、双向链表和循环链表)3.链式表的应用(多项式的表示与相加) (0.5学时)第三章栈和队列(4学时)1.栈(2学时)栈的定义和基本运算、存储结构和实现、应用举例及栈与递归过程2.队列(2学时)队列的定义和基本运算、存储结构和实现及双端队列、输入和输出受限队列第四章串(3学时)1.串的定义、运算和存储结构(0.5学时)2.串的基本运算的实现(2.5学时)串的匹配、KMP算法及NEXT函数第五章数组和广义表(3学时)1.数组的定义和运算(0.5学时)2.数组的顺序存储结构及存储地址的计算(1学时)3.矩阵(特殊矩阵、稀疏矩阵)的压缩存储(1学时)4.广义表的定义、基本运算和存储结构(0.5学时)第六章树和二叉树(8学时)1.树的定义、基本运算和存储结构(1学时)2.二叉树的定义、性质和存储结构(顺序、链式) (1.5学时)3.二叉树的遍历和线索二叉树(2学时)4.树、二叉树与森林的转换;树和森林的遍历(1.5学时)5.二叉树的应用(2学时)二叉排序树、Huffman树第七章图(8学时)1.图的定义和术语(1学时)2.图的存储结构(2学时)3.图的遍历(1学时)4.图的连通性问题(连通分量、生成树、最小生成树) (1学时)5.DAG图及其应用(2学时)拓扑排序、关键路径6.最短路径(1学时)单源最短路径、每对顶点间的最短路径第九章查找(8学时)1.概述(0.5学时)2.顺序表的查找(顺序查找、折半查找、分块查找) (2学时)3.树表的查找(3学时)二叉排序树、平衡二叉树、B_树和B+树4.哈希表(Hash) (2.5学时)基本概念、Hash函数与Hash表的构造方法、Hash表的查找和冲突处理方法第十章内部排序(6学时)1.概述(0.5学时)2.插入排序(直接插入排序、折半插入排序、2-路插入排序、Shell排序) (1.5学时)3.选择排序(直接选择排序、树型选择排序、堆排序) (1.5学时)4.交换排序(冒泡排序、快速排序) (1.5学时)5.归并排序(2-路归并排序) (0.5学时)6.基数排序(0.5学时)实验内容:(8学时)实验一、指针与结构体操作实验二、线性表及其应用实验三、栈与队列操作实验四、串及其应用实验五、数组及其应用实验六、二叉树建树与遍历实验七、图的基本操作实验八、查找与排序四、教学参考书[1]严蔚敏等,《数据结构》(第二版)清华大学出版社,1993[2]严蔚敏等,《数据结构题集》,1995[3] William Ford,William Topp,《Data Structure with C++》清华大学出版社Prentice Hall联合出版,1996五、说明实验内容具体内容及要求见实验指导书。

《数据结构》教学大纲

《数据结构》教学大纲

《数据结构》教学大纲数据结构教学大纲一、课程介绍1.1课程名称:数据结构1.2学分:3学分1.3先修课程:计算机基础1.4课程性质:必修课程1.5学习方式:课堂讲授、实践操作、实验、课程作业二、教学目标2.1知识目标通过本课程的学习,学生应该掌握以下知识:-基本数据结构的概念和特性,包括数组、链表、栈、队列、树和图等;-常用的数据结构算法,如查找、排序、插入和删除等;-理解数据结构的时间复杂度和空间复杂度,并能进行分析和评估;-能够选择合适的数据结构和算法来解决实际问题。

2.2能力目标-能够运用所学的数据结构和算法解决实际问题;-能够分析和评估不同数据结构和算法的优劣;-具备良好的编程能力,能够实现数据结构的基本操作;-能够进行抽象思维和问题建模,将实际问题转化为数据结构的操作。

2.3态度目标-具备良好的团队合作和沟通能力,能够与他人合作解决问题;-具备批判性思维和创新精神,能够提出新的数据结构和算法。

三、教学内容3.1数据结构概述-数据结构的定义和分类;-数据结构与算法的关系;-数据结构的应用领域。

3.2线性表-线性表的定义和基本操作;-顺序表和链表的实现;-线性表的应用。

3.3栈和队列-栈和队列的定义和基本操作;-栈和队列的实现;-栈和队列的应用。

3.4树和二叉树-树和二叉树的定义和基本操作;-二叉树的遍历和线索化;-树和二叉树的应用。

3.5图-图的定义和基本操作;-图的存储结构和遍历算法;-图的应用。

3.6查找和排序-查找算法的分类和基本思想;-顺序查找和二分查找;-排序算法的分类和基本思想;-冒泡排序、插入排序和快速排序。

四、教学方法4.1讲授法:通过课堂讲授,向学生介绍数据结构的概念、特性和应用,讲解基本操作和算法的原理和实现方法。

4.2实践操作:通过编程实践和课程作业,让学生运用所学的数据结构和算法解决实际问题,加深对知识的理解和运用能力。

4.3实验:通过实验,让学生亲自操作和实验不同的数据结构,加深对数据结构和算法的理解。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

《数据结构》课程教学大纲
课程名称:数据结构
学分: 4 总学时:80 理论学时:48 实验(上机)学时:32
适用专业:计算机专业
一、课程的性质、目的
《数据结构》是计算机学科的主干基础课,主要介绍基本的数据结构、典型算法及其应用,对计算机学科而言,《数据结构》是一门承前启后的核心课程,它既提供编写规范的程序的理论基础和实践指导,又是进一步学习其他如操作系统、编译原理、软件工程、人工智能、计算机网络等软硬件课程的基础,课程的数据结构和算法是编写软件的核心技术,广泛应用于从系统软件到应用软件、从信息管理系统到移动网络计算、从嵌入式系统到图像图形软件等各种软件开发中,因此,《数据结构》课程在计算机科学中占有十分重要的地位。

通过该课程的学习,学生应该能够深刻理解各种常用的数据结构,以及各种数据结构之间的逻辑关系;同时应该熟练掌握各种数据结构在计算机中的存储表示和在这些数据结构上的运算与实际的算法,并对于算法的效率能够进行简要的分析,学会数据组织的方法和将实际问题进行计算机表示的方法,如针对什么样的问题该用怎样的数据结构来表示,能让算法更有效率,也更简单,并培养良好的程序设计技能。

二、教学基本要求
1、从数据结构的逻辑结构、存储结构和基本操作三个方面去掌握线性表、栈、队列、串、数组、树、图等常用的数据结构。

2、掌握在各种常用的数据结构上实现的排序、查找运算。

3、对算法的时间和空间复杂性有一定的分析能力。

4、针对简单的应用问题,能选择合适的数据结构及设计有效的算法
三、课程教学基本内容
第0章 绪论(2学时)
教学内容:C语言的主要内容复习:变量、函数、结构、指针、数组、内存分配等
教学要求: 掌握C语言的基本语法知识,能编写基本的C语言程序。

第1章 绪论(2学时)
教学内容:
1.1 什么是数据结构
1.2 基本概念和术语
1.3 抽象数据类型的表示与实现
1.4 算法和算法分析
教学要求:了解数据结构的基本概念和术语、掌握算法描述、算法分析方法。

第2章 线性表(6课时)
教学内容:
2.1 线性表的类型和定义
2.2 线性表的顺序表示和实现
2.3 线性表的链式存储和实现
2.4 一元多项式的表示及相加
教学要求:掌握线性表的抽象数据类型定义,线性表的逻辑结构和存储结构,及线性表的各种运算的实现技巧。

第3章 栈和队列(6课时)
教学内容:
3.1 栈的定义及实现
3.2 栈的应用
3.3 队列的定义及实现
3.4 队列的应用
教学要求:掌握栈和队列这两种最常用的数据结构的逻辑结构、存储结构、运算,初步掌握栈和队列的运用技巧,应用方法。

第4章 数组(3课时)
教学内容:
4.1 数组的类型定义
4.2 数组的顺序表示和实现
4.3 矩阵的压缩存储
教学要求:掌握数组的定义、顺序存储表示与实现,掌握几种特殊矩阵的存储方法。

第5章 字符串(4课时)
教学内容:
5.1 字符串的类型定义
5.2 字符串的表示和实现
5.3 模式匹配
教学要求:掌握数组的定义、顺序或链式存储表示与实现,熟悉简单模式匹配、了解KMP模式匹配。

第6章 树和二叉树 (8课时)
教学内容:
6.1 树的定义和基本术语
6.2 二叉树
6.3 遍历二叉树和线索二叉树
6.4 树和森林
6.5 哈夫曼树及其应用
教学要求:掌握树和二叉树的概念、存储结构,基本运算及其遍历,掌握哈夫曼树的概念和构造方法。

第7章 图 (8课时)
教学内容:
7.1 图的定义和术语
7.2 图的存储结构
7.3 图的遍历
7.4 图的连通性问题
7.5 有向无回图及其应用
7.6 最短路径
教学要求:掌握图的有关概念、存储结构、遍历算法,理解(最小)生成树、拓扑排序、最短路径的典型算法,了解关键路径问题及算法。

第8章 排序 (6课时)
教学内容:
8.1 概述
8.2 插入排序
8.3 快速排序
8.4 选择排序
8.5 归并排序
8.6 各类内部排序方法的比较讨论
教学要求:掌握各类排序的方法,算法的时空性能分析,应用特点。

第9章 查找 (3课时)
教学内容:
9.1 静态查找表
9.2 动态查找表
9.3 哈希表
教学要求:掌握静态查找表、动态查找表及哈希表的概念、存储结构、及实现方法。

四、课程考核方式
该课程列为考试课;考试方式是闭卷;课程成绩将由期终考试成绩和平时成绩结合,其中平时成绩包括平时出勤、课上表现、实验课成绩构成,平时具体比例由任课老师掌握,不少于30%,建议在50%左右,其中实验成绩建议在30%左右。

五、学时分配表
教学内容讲


























第0章 语言基础复习 2
第1章 绪论 2
第2章 线性表 6 6
第3章 栈与队列 6 3
第4章 数组 3 3
第5章 字符串 4 3
第6章 树与二叉树 8 6
第7章 图 8 6
第8章 内部排序 6 3
第9章 查找 3 2
总计48+32=80
六、参考教材
严蔚敏,吴伟民,米宁编著,《数据结构》(C语言版),清华大学出版社,2012-12-1
七、有关说明
先修课程: C语言(或C++语言)。

后续课程: 操作系统、编译原理、图像处理、计算机图形学、计算机网络、嵌入式系统。

学生自学内容:文件处理、B+树等数据结构其他内容,无要求、不再考试范围内。

大纲撰写人:董洪伟
大纲审核人:张稀煌
2015-07-09。

相关文档
最新文档