习的重视,另一方面也能够释放线下课堂的部分时间,将课堂时间更多地用来培养学生综合能力。2、费曼学习法和案例教学法(支撑课程目标1、2)完成课堂中的新课教学环节。为学生分组,每个小组根据教师给出的题目,自由选择一个知识点讲解,包括理论与操作两个部分,教师对讲解内容、语言表达、课件制作、操作效果及互动情况等对小组进行打分。帮助学生通过费曼学习法,用知识输出的方式深刻理解学习内容,调动学生听课积极性。为学生展示新课的应用案例,帮助学生建立理论与实际的联系,增加学生学习兴趣。3、PBL教学法(支撑课程目标3、4、5)完成课堂中的训练及巩固环节,先让学生了解本节课结束后的达成目标,让学生带着对案例的理解或任务进行后续新课的学习,注重学生的动手操作,鼓励学生多尝试。培养学生的编程动手能力,树立学生的编程自信。为算法设计的更高一级目标打下基础。4、小组合作法(支撑课程目标3、4、5)作为学生完成训练及巩固的辅助方法,让学生通过小组获得更多解决思路,锻炼学生的小组合作能力,增强班级凝聚力。5、拓展课外教学(支撑课程目标1、4、5)鼓励和推荐学生参与教师的科研,或到企业参加软件系统的模块设计和开发工作,提高学生的科研能力和创新能力。六、教学内容与教学安排(一)课堂教学内容及安排重难点思政元对应学素/思政教学学习序号教学内容教学目标时案例(简方式目标述)一、绪论科技强(1)了解数据结构的意义和发展重点:数据结数据结过程;国、工匠构的基本概课程精神讲授+构的研究内(2)掌握数据结构的基本概念:念和术语:目标1容;数据结构难点:算法与案例+(3)掌握抽象数据类型的表示与41、4、的基本概念算法分析。练习实现内容;5和术语;抽象(4)掌握算法设计的基础知识以数据类型的及算法的时间复杂度分析方法。18
18 习的重视,另一方面也能够释放线下课堂的部分时间,将课堂时间更多地用来培养学生综合 能力。 2、费曼学习法和案例教学法(支撑课程目标 1、2) 完成课堂中的新课教学环节。为学生分组,每个小组根据教师给出的题目,自由选择一 个知识点讲解,包括理论与操作两个部分,教师对讲解内容、语言表达、课件制作、操作效 果及互动情况等对小组进行打分。帮助学生通过费曼学习法,用知识输出的方式深刻理解学 习内容,调动学生听课积极性。为学生展示新课的应用案例,帮助学生建立理论与实际的联 系,增加学生学习兴趣。 3、PBL 教学法(支撑课程目标 3、4、5) 完成课堂中的训练及巩固环节,先让学生了解本节课结束后的达成目标,让学生带着对 案例的理解或任务进行后续新课的学习,注重学生的动手操作,鼓励学生多尝试。培养学生 的编程动手能力,树立学生的编程自信。为算法设计的更高一级目标打下基础。 4、小组合作法(支撑课程目标 3、4、5) 作为学生完成训练及巩固的辅助方法,让学生通过小组获得更多解决思路,锻炼学生的 小组合作能力,增强班级凝聚力。 5、拓展课外教学(支撑课程目标 1、4、5) 鼓励和推荐学生参与教师的科研,或到企业参加软件系统的模块设计和开发工作,提高 学生的科研能力和创新能力。 六、教学内容与教学安排 (一)课堂教学内容及安排 序号 教学内容 教学目标 学 时 重难点 思政元 素/思政 案例(简 述) 教学 方式 对应 学习 目标 1 一、绪论 数 据 结 构 的 研 究 内 容;数据结构 的 基 本 概 念 和术语;抽象 数 据 类 型 的 (1)了解数据结构的意义和发展 过程; (2)掌握数据结构的基本概念; (3)掌握抽象数据类型的表示与 实现内容; (4)掌握算法设计的基础知识以 及算法的时间复杂度分析方法。 4 重点:数据结 构 的 基 本 概 念和术语; 难点:算法与 算法分析。 科 技 强 国、工匠 精神 讲授+ 案例+ 练习 课 程 目 标 1、4、 5
表示与实现;算法与算法分析。重点:线性表(1)理解线性表的定义和特点:民族自(2)熟练掌握线性表的顺序表示的顺序表示信心、传二、线性表统文化线性表的概方法和基本操作:与实现;线性念;线性表的(3)熟练掌握线性表的链式表示表的链式表顺序表示与和基本操作方法:示与实现;讲授+课程实现;线性表(4)理解循环链表、双向链表及难点:线性表目标案例+25的应用。的链式表示其相关操作;实验+1、2、练习与实现:顺序(5)了解顺序表、链表的优缺点,3、4表与链表的选用依据,应用范围等:比较;线性表(6)熟练掌握线性表基本应用方的应用。法,重点是有序顺序表、有序链表的合并。重点:栈的表栈:灵活(1)掌握栈定义、不同存储结构示和操作实变通、不及运算规则等的描述现;队列的表钻牛角(2)了解栈与一般线性表各种区示和操作实尖别,如顺序表、顺序栈、链表、三、栈和队列队现;栈和队列的链栈;课程列:难点:栈与递概念;栈的表(3)掌握顺序栈、链栈的主要运讲授+目标归。遵案例+示和操作实算的实现;351、2、A现;栈与递(4)掌握利用栈实现递归处理的实验+3、4、规练习归;队列的表基本原理及基本实现方法:S则、示和操作实(5)理解队列的基本概念,记识家现。队列的相关术语及其对队列问题国的描述:情(6)掌握循环队列的表示和操作怀实现。四、串、数组重点:串的存勤俭节讲授+课程(1)掌握串的定义及相关术语;和广义表(2)了解串的顺序、链式存储结目标储结构:多维约、网络案例+19
19 表示与实现; 算 法 与 算 法 分析。 2 二、线性表 线 性 表 的 概 念;线性表的 顺 序 表 示 与 实现;线性表 的 链 式 表 示 与实现;顺序 表 与 链 表 的 比较;线性表 的应用。 (1)理解线性表的定义和特点; (2)熟练掌握线性表的顺序表示 方法和基本操作; (3)熟练掌握线性表的链式表示 和基本操作方法; (4)理解循环链表、双向链表及 其相关操作; (5)了解顺序表、链表的优缺点, 选用依据,应用范围等; (6)熟练掌握线性表基本应用方 法,重点是有序顺序表、有序链表 的合并。 5 重点:线性表 的 顺 序 表 示 与实现;线性 表 的 链 式 表 示与实现; 难点:线性表 的应用。 民 族 自 信心、传 统文化 讲授+ 案例+ 实验+ 练习 课 程 目 标 1、2、 3、4 3 三、栈和队列 栈 和 队 列 的 概念;栈的表 示 和 操 作 实 现 ; 栈 与 递 归;队列的表 示 和 操 作 实 现。 (1)掌握栈定义、不同存储结构 及运算规则等的描述; (2)了解栈与一般线性表各种区 别,如顺序表、顺序栈、链表、 链栈; (3)掌握顺序栈、链栈的主要运 算的实现; (4)掌握利用栈实现递归处理的 基本原理及基本实现方法; (5)理解队列的基本概念,记识 队列的相关术语及其对队列问题 的描述; (6)掌握循环队列的表示和操作 实现。 5 重点:栈的表 示和操作实 现;队列的表 示和操作实 现; 难点:栈与递 归。 栈:灵活 变通、不 钻牛角 尖 队 列: 遵 守 规 则、 家 国 情 怀 讲授+ 案例+ 实验+ 练习 课 程 目 标 1、2、 3、4、 5 4 四、串、数组 和广义表 (1)掌握串的定义及相关术语; (2)了解串的顺序、链式存储结 5 重点:串的存 储结构;多维 勤 俭 节 约、网络 讲授+ 案例+ 课 程 目 标
练习串、数组和广构,尤其是以块为结点的链式存数组的存储:安全1、2、储结构;广义表的取3、4义表的定义;串的存储结表头、取表尾(3)熟练掌握串模式匹配的BF构及其运算;算法:运算;多维数组的(4)熟练掌握2维及其以上维数难点:串的运存储及元素算:多维数组数组的元素定位计算方法定位计算;广元素定位计(5)了解一些特殊矩阵的压缩存储方法,如对称矩阵、三角矩阵算。义表的取表头、取表尾运等算。(6)掌握广义表的定义及其相关重要结论;(7)掌握广义表求表头GetHead(L)、求表尾GetTail(L)运算。(1)掌握树和二叉树的定义及相重点:二叉树传统文关术语,理解术语在树问题描述的性质和存化、创新储结构;遍历意识、工中的作用;五、树与二叉二叉树:匠精神;(2)掌握二叉树的性质,满二叉树树、完全二叉树的结构特点及相难点:哈夫曼创新无树和二叉树树及其应用。处不在-互关系等;的概念:二叉(3)掌握二叉树的顺序存储和链哈夫曼课程树的性质和讲授+式存储原理;树及应目标存储结构:遍案例+用(4)掌握遍历二叉树的基本方法11、2、历二叉树和实验+与算法实现;3、4、线索二叉树;练习(5)掌握根据遍历序列重构二叉树和森林;哈树的方法;夫曼树及其(6)掌握线索二叉树的基本概应用。念、术语,实现原理及方法;(7)了解树的基本存储方法,森林与树的转换原理;(8)掌握哈夫曼树的基本概念20
20 串、数组和广 义表的定义; 串 的 存 储 结 构及其运算; 多 维 数 组 的 存 储 及 元 素 定位计算;广 义 表 的 取 表 头、取表尾运 算。 构,尤其是以块为结点的链式存 储结构; (3)熟练掌握串模式匹配的 BF 算法; (4)熟练掌握 2 维及其以上维数 数组的元素定位计算方法; (5)了解一些特殊矩阵的压缩存 储方法,如对称矩阵、三角矩阵 等; (6)掌握广义表的定义及其相关 重要结论; (7) 掌 握 广 义 表 求 表 头 GetHead(L)、求表尾 GetTail(L) 运算。 数组的存储; 广义表的取 表头、取表尾 运算; 难点:串的运 算;多维数组 元素定位计 算。 安全 练习 1、2、 3、4 5 五、树与二叉 树 树 和 二 叉 树 的概念;二叉 树 的 性 质 和 存储结构;遍 历 二 叉 树 和 线索二叉树; 树和森林;哈 夫 曼 树 及 其 应用。 (1)掌握树和二叉树的定义及相 关术语,理解术语在树问题描述 中的作用; (2)掌握二叉树的性质,满二叉 树、完全二叉树的结构特点及相 互关系等; (3)掌握二叉树的顺序存储和链 式存储原理; (4)掌握遍历二叉树的基本方法 与算法实现; (5)掌握根据遍历序列重构二叉 树的方法; (6)掌握线索二叉树的基本概 念、术语,实现原理及方法; (7)了解树的基本存储方法,森 林与树的转换原理; (8)掌握哈夫曼树的基本概念、 5 重点:二叉树 的 性 质 和 存 储结构;遍历 二叉树; 难点:哈夫曼 树及其应用。 传 统 文 化、创新 意识、工 匠精神; 创 新 无 处 不 在 - 哈 夫 曼 树 及 应 用 讲授+ 案例+ 实验+ 练习 课 程 目 标 1、2、 3、4、 5
构造原理与方法、应用与实现;(1)掌握图的基本概念及相关术重点:图的存家国情储结构;图的怀、工匠语和性质;精神遍历;六、图(2)掌握并能应用图的邻接矩阵难点:图的应图的概念图课程和邻接表两种存储表示方法讲授+用。的存储结构;(3)掌握并能运用图的两种遍历目标案例+图的遍历:图方法DFS和BFS661、2、实验+的应用。(4)掌握最短路径算法(Dijkstra3、4、练习算法);(5)掌握最小生成树的顶点归并和边归并原理;(6)掌握拓扑排序算法的思想。重点:线性表平衡心(1)掌握顺序表和有序表(折半查找)的查找算法及其性能分析的查找;树表态,胜不的查找;骄败不方法;铵(2)掌握二叉排序树的构造和查难点:散列表七、查找的查找。找算法及其性能分析方法;课程查找的概念:讲授+(3)理解平衡二叉树的平衡原目标线性表的查练习+理;51、2、1找;树表的查案例+(4)掌握散列函数(除留余数法)3、4、找:散列表的实验的构造及解决冲突的方法及其特S查找点;(5)理解链地址法(拉链法);(6)理解B-树的定义、查找特点,插入与删除原理。重点:插分治策八、排序(1)掌握排序的基本概念,如什入排序;略、奥运么是排序、排序的目的、排序算排序的概念:课程交换排精神插入排序;交法的衡量等讲授+目标58序;换排序;选择案例1、2、(2)掌握直接插入排序、折半插排序难点:选3、4入排序、希尔排序:择排序。(3)掌握冒泡排序、快速排序;21
21 构造原理与方法、应用与实现; 6 六、图 图的概念;图 的存储结构; 图的遍历;图 的应用。 (1)掌握图的基本概念及相关术 语和性质; (2)掌握并能应用图的邻接矩阵 和邻接表两种存储表示方法; (3)掌握并能运用图的两种遍历 方法 DFS 和 BFS; (4)掌握最短路径算法(Dijkstra 算法); (5)掌握最小生成树的顶点归并 和边归并原理; (6)掌握拓扑排序算法的思想。 6 重点:图的存 储结构;图的 遍历; 难点:图的应 用。 家 国 情 怀、工匠 精神 讲授+ 案例+ 实验+ 练习 课 程 目 标 1、2、 3、4、 5 7 七、查找 查找的概念; 线 性 表 的 查 找;树表的查 找;散列表的 查找 (1)掌握顺序表和有序表(折半 查找)的查找算法及其性能分析 方法; (2)掌握二叉排序树的构造和查 找算法及其性能分析方法; (3)理解平衡二叉树的平衡原 理; (4)掌握散列函数(除留余数法) 的构造及解决冲突的方法及其特 点; (5)理解链地址法(拉链法); (6)理解 B-树的定义、查找特点, 插入与删除原理。 5 重点:线性表 的查找;树表 的查找; 难点:散列表 的查找。 平衡心 态,胜不 骄败不 馁 讲授+ 练习+ 案例+ 实验 课 程 目 标 1、2、 3、4、 5 8 八、排序 排序的概念; 插入排序;交 换排序;选择 排序 (1)掌握排序的基本概念,如什 么是排序、排序的目的、排序算 法的衡量等; (2)掌握直接插入排序、折半插 入排序、希尔排序; (3)掌握冒泡排序、快速排序; 5 重点:插 入排序; 交 换 排 序; 难点:选 择排序。 分 治 策 略、奥运 精神 讲授+ 案例 课 程 目 标 1、2、 3、4
(4)掌握简单选择排序、树形选择排序、堆排序;(5)了解归并排序。(二)课内实践项目内容及安排实验实验(实践)(实学类型(演示、教学对应的课程序实验(实践)内容时践)项方法目标验证、综合、M目设计研究等)1.线性表的顺序存储存储结构设计、链式存储存储结构设计及相应的操作算法设计:线性表2.线性表的顺序存储存储结构设计,编写案例的创建、程序,实现顺序表的创建、插入和删除等课程目标验证+实2插入和A基本操作算法;1、2、3、4验删除3.线性表的链式存储存储结构设计。编写程序,实现链表的创建、插入和删除等基本操作算法。1.栈的存储结构设计和相应的操作算法设计;案例课程目标2.编写程序,实现顺序栈的创建、进栈的操验证2+实1、2、3、4、栈和出栈等基本操作算法:作2验53.编写程序,实现链栈的创建、进栈和出栈等基本操作算法。1.二叉树的递归遍历操作的实现方法,二叉树的非递归遍历操作的实现。案例二叉树课程目标2:用前序方法建立一棵二叉树。验证的基本3+实1、2、3、4、33:编写前序遍历、中序遍历、后序操作验5遍历二叉树的程序。1·图的两种存储结构(邻接矩阵和邻接表)的表示方法和相应的操作算法设计。案例图的操课程目标验证+实2.编写程序,求从某个源点到其余各顶3作41、2、3、4验点的最短路径算法(迪杰斯特拉算法):3.编写程序,求每一对顶点之间的最短22
22 (4)掌握简单选择排序、树形选 择排序、堆排序; (5)了解归并排序。 (二)课内实践项目内容及安排 序 序 号 实 验 ( 实 践 ) 项 目 实验(实践)内容 学 时 实验(实践) 类型(演示、 验证、综合、 设计研究等) 教 学 方法 对应的课程 目标 1 1 线性表 的创建、 插入和 删除 1.线性表的顺序存储存储结构设计、链式 存储存储结构设计及相应的操作算法设计; 2.线性表的顺序存储存储结构设计, 编写 程序,实现顺序表的创建、插入和删除等 基本操作算法; 3.线性表的链式存储存储结构设计。编写 程序,实现链表的创建、插入和删除等基本 操作算法。 2 验证 案 例 + 实 验 课 程 目 标 1、2、3、4 2 2 栈的操 作 1.栈的存储结构设计和相应的操作算法设 计; 2.编写程序,实现顺序栈的创建、进 栈和出栈等基本操作算法; 3.编写程序,实现链栈的创建、进栈 和出栈等基本操作算法。 2 验证 案 例 + 实 验 课 程 目 标 1、2、3、4、 5 3 3 二叉树 的基本 操作 1.二叉树的递归遍历操作的实现方法, 二叉树的非递归遍历操作的实现 。 2 .用前序方法建立一棵二叉树。 3 .编写前序遍历、中序遍历、后序 遍历二叉树的程序。 3 验证 案 例 + 实 验 课 程 目 标 1、2、3、4、 5 4 4 图的操 作 1 .图的两种存储结构(邻接矩阵和邻接 表)的表示方法和相应的操作算法设计。 2 .编写程序,求从某个源点到其余各顶 点的最短路径算法(迪杰斯特拉算法); 3 .编写程序,求每一对顶点之间的最短 3 验证 案 例 + 实 验 课 程 目 标 1、2、3、4