《数据结构》课程教学大纲
一、课程基本信息 二、课程描述和目标1.课程描述
本课程是高等院校计算机类相关专业一门重要的学科基础课,也是本校计算机科学与技术、软件工程、网络工程、大数据与科学技术等专业的计算机大类平台必修课。本课程主要讨论各种数据的抽象表示、实现方法、处理数据的算法设计以及对算法性能的分析。它的先修课程是:高级语言程序设计,后继课程是:数据库原理、操作系统等。本课程的教学依赖于其先修课程,又能为其后续课程及进一步的软件开发奠定良好的理论与实践基础。
2. 课程目标
结合专业人才培养方案,并基于新工科专业OBE理念,力求通过本课程的系统学习促进学生在知识、能力和素质三方面得到一定程度的提升。
课程目标1:
能够清楚表述数据结构和算法的基本概念,并能判断计算机处理不同数据时所采用的组织方法、操作原理和实现方法。
课程目标2:
能够针对具体问题,运用数据结构课程相关知识和批判思维,分析计算机处理对象的结构特征,选择合适的数据存储结构,设计高效的操作算法。
课程目标3:
能够综合运用数据结构的基本原理和设计方法,研究复杂问题的特征,自主设计可行的求解方案,并能运用高级语言编写实现问题求解的应用程序,再验证其正确性。
三、课程目标对毕业要求的支撑关系毕业要求 | 指标点 | 课程目标 | 支撑程度 | 目标达成形式 |
2. 问题分析 | 2-1能够对计算机软硬件系统有深入的认识,并判断计算机领域复杂工程问题的关键要素。 | 课程目标 1 | H | 课堂互动、作业、实验、 平时测验、期末考试 |
3. 设计/开发解决方案 | 3-2能够根据具体需求,完成软硬件模块的设计与开发。 | 课程目标 2 | H | 课堂互动、作业、实验、 平时测验、期末考试 |
4. 研究 | 4-2掌握科学实验的基本理论、方法和工具,根据计算机领域复杂工程问题的特征,选择研究路线,设计实验方案,搭建实验环境并开展实验。 | 课程目标 3 | M | 实验 |
本课程教学内容主要包括线性表、栈和队列、串与数组、树和图等主要数据结构的特点、在计算机内部的表示和实现原理与方法分析,以及查找和排序两种主要操作的各种实现算法及其性能分析。具体内容及基本要求阐述如下:
序号 | 教学内容要点 | 教学要求 | 理论学时 | 实践 学时 | 上机学时 | 教学 方法 | 对应课程目标 |
1 | 课程简介; 算法与数据结构; 数据结构的相关概念; 数据结构与算法的描述; 算法分析的基本方法 | 了解课程的学习目的和内容;熟悉数据结构中各名词、术语的含义;掌握算法的特性、算法的描述;掌握计算语句频度和估算算法时间复杂度的方法 | 3 | 0 | 0 | 线上线下混合式教学 | 课程目标 1 |
2 | 线性表的概念及其抽象数据类型描述; 线性表的顺序表示与实现; 线性表的链式表示与实现; 多项式的算术运算 | 深刻理解线性表的抽象数据类型特性;熟练掌握线性表顺序与链式两类存储结构表示及其基本操作的实现算法;能够从时间和空间复杂度的角度综合比较线性表两种存储结构的不同特点及其适用场合;学会使用线性表求解一元多项式的加法运算。 | 8 | 0 | 2 | 线上线下混合式教学 | 课程目标 1、2、3 |
3 | 栈的抽象数据类型描述及其实现;队列的抽象数据类型描述及其实现;算术表达式的求值问题;栈与递归; | 深刻理解栈与队列的抽象数据类型特性;熟练掌握栈与队列顺序和链式两类存储结构表示及其基本操作的实现算法;掌握算术表达式求值问题的求解过程中栈的应用,并理解其实现方法;了解递归的基本概念及栈在递归调用中的作用。 | 6 | 0 | 2 | 线上线下混合式教学 | 课程目标1、2、3 |
4 | 串的基本概念及其抽象数据类型描述; 串的存储结构及其之上的基本操作的实现; 串的模式匹配; 数组的概念及其抽象数据类型描述; 特殊矩阵; 稀疏矩阵 | 理解"串"类型定义中各基本操作的特点,并能正确利用它们进行串的其它操作; 掌握串的定长顺序存储和堆分配存储结构及其之上的基本操作的实现算法; 理解串匹配的基本算法;理解数组抽象数据类型;掌握一般数组顺序存储和特殊矩阵压缩存储的存储方法;掌握稀疏矩阵中三元组表的压缩存储方法;了解利用三元组表存储的矩阵快速转置操作算法。 | 5 | 0 | 0 | 线上线下混合式教学 | 课程目标 1 |
5 | 树与二叉树的基本概念; 二叉树的性质; 二叉树的存储结构 二叉树的遍历及其应用举例; 哈夫曼树及哈夫曼编码; 树与森林 | 领会树和二叉树的类型定义,理解树和二叉树的结构差别;熟记并深刻理解二叉树的定义、性质;熟练掌握二叉树的二叉链表的存储结构及其建立的算法;熟练掌握二叉树的三种递主要的递归遍历算法,并能灵活运用遍历算法实现二叉树的其它操作;了解最优树的特性,掌握建立最优树和哈夫曼编码的方法。 | 8 | 0 | 2 | 线上线下混合式教学 | 课程目标 1、2、3 |
6 | 图的基本概念; 图的存储结构; 图的遍历;最小生成树; 单源最短路径;拓扑排序; 关键路径 | 领会图的类型定义及相关术语;熟悉掌握图的邻接矩阵和邻接表两种存储结构;理解图中一些常用的算法:包括图的深度优先和广度优先遍历算法、拓扑排序和关键路径算法、求最小生成树和求单源最短路径算法。 | 6 | 0 | 2 | 线上线下混合式教学 | 课程目标 1、2、3 |
7 | 排序的基本概念; 插入排序;交换排序;选择排序;归并排序;基数排序;各种内排序方法的比较 | 理解排序的基本概念; 掌握各种常见的内排序的实现方法; 学会从时间复杂度、空间复杂度和稳定性三个方面分析和比较各种内排序的性能,并了解各种内排序的特性。 | 6 | 0 | 2 | 线上线下混合式教学 | 课程目标 1、2 |
8 | 查找的基本概念; 静态查找表中的顺序查找和有序表的二分查找 动态查找表中的二叉排序树、平衡二叉树 哈希表查找 | 理解"查找表"的结构特点以及各种表示方法的适用性; 熟练掌握顺序查找和在有序表中进行二分查找的算法及其性能分析; 深刻理解二叉排序树的定义和性质,熟练掌握二叉排序中的查找算法,理解二叉排序树中插入和删除元素的方法; 理解二叉平衡树的构造过程及二叉平衡树中插入元素后的平衡旋转方法, 熟练掌握哈希表的构造方法,深刻理解哈希表与其它结构的表的实质性的差别; 掌握描述查找过程的判定树的构造方法,以及按定义计算各种查找方法在等概率情况下查找成功时的平均查找长度。 | 6 | 0 | 2 | 线上线下混合式教学 | 课程目标 1、2、3 |
合计 | 48 | 0 | 12 |
思政课时分配表
五、课程重难点 六、课程要求及成绩评定1. 教学环节及其组织形式
本课程采用线上线下相结合的混合式教学模式实施教学,整个教学分课前、课中、课后三个环节进行组织教学活动。
(1) 课前:“线上”自主探究学习,在每周课堂教学活动的前1~2周,教师在线上布置任务,学生利用线上教学资源,根据老师设定的“学习导案”和“学习任务单”牵引着学生自定步调完成既定的学习任务。
(2)课中:“线下”课堂活动,如果采用基于“MOOC/SPOC+翻转课堂”的教学模式,则课中主要是以“问题”为主导,借助“雨课堂”等教学辅助工具,并结合PPT开展课前测验、师生质疑答疑、课堂讨论、协作和分享等教学活动;如果采用传统的教学模式,则以“教师讲授为主”,再结合案例组织课堂讨论等活动。
(3) 课后:“线上/线下”的学习效果检测
每次课堂活动后安排有线上“课后测验”,针对章节内容安排有“作业、实验、考试”等“从浅入深、从易到难”循序渐进的的学习效果检测活动,从而促进课程目标的达成。
2.课程考核方式及成绩评定
本课程的考核办法采用线上与线下相结合、过程性考核与终结性考核相结合的多元化考核方式。过程性考核包括线上和线下两部分,其中线上包括视频学习、互动、作业(线上)、测验、考试等,线下包括课堂互动、作业(线下)、实验等。终结性考核为期末卷面考试。
(1)如果采用基于“MOOC/SPOC+翻转课堂”的教学模式,过程性考核和终结性考核分别占总成绩的50%。
(2)如果采用传统的教学模式,则过程性考核占总成绩的40%,终结性考核占总成绩的60%。
(3)期末考试:期末考试的题型主要有选择题、判断题、计算与应用题、算法题、编程题等5种题型,考试采用笔试闭卷集中考试的方式。
执笔人:刘小晶(签名) 专业(课程组)审核人:(签名)朱蓉
参与讨论人员:刘小晶、朱蓉 、杜卫锋