基于MOOC 的数据结构课程混合式教学设计

2019-12-27 09:46王树梅
软件导刊(教育技术) 2019年12期
关键词:二叉树算法评价

王树梅,侯 漠

(江苏师范大学 计算机科学与技术学院,江苏 徐州22111)

0 引言

MOOC(Massive Open Online Courses,大规模在线开放课程) 是在互联网上实现整个学习过程的学习方式,学习资源包括教学视频、课件、单元测试、章节测试、课件上的嵌入式测试、互动区讨论等[1]。诸多专家对混合式教学提出了见解,文献[2]将英国高校MOOC 整合到中国高校面授课程中,同时建构了英国MOOC 主持教师与中国学生的互动式视频会议活动框架。文献[3]应用相关分析0 法、线性回归分析法及结构方程模型法分析与验证了教学存在、社会存在与认知存在之间的相关关系及因果关系,开展基于MOOC的中外合作混合教学实践提供了新思路。文献[4]分析了“雨课堂”教学手段应用下,结合学生实际情况,与翻转课堂相结合的混合式教学模式的体系构建。文献[5]对基于在线课程的混合式教学模式进行了设计,并在"网站设计与开发"课程实施中开展了两年多教学实践,结合实践阐述了该模式的关键环节与实施策略。

本文以数据结构课程为例,结合教学实践,借助MOOC、雨课堂与云班课、CG 平台实现了混合式教学,从教学内容、教学策略与教学信息化3 方面阐述了混合式教学设计的过程。

1 教学内容设计

本课程教学内容包括10 章,授课过程中将其分为4 大块讲解,分别是线性结构、树形结构、图形结构与算法设计。线性结构是整个课程的基础也是重点,这一部分学习让学生掌握顺序表与链表的基本运算,并能够解决有关线性表的问题。线性结构包括线性表、栈、队列、串、数组、广义表,它们又都具有各自特点,其中栈与队列是重点,因为在图形结构与树形结构问题中会用到这两种结构。

树形结构包括树与二叉树,二叉树是重点教学内容,主要知识点有二叉树的性质、基本运算、存储结构、构造、遍历以及与树、森林之间转换等。哈夫曼树是具有WPL 值最小的二叉树,构造哈夫曼树算法是重点与难点内容。哈夫曼编码是在构造哈夫曼树基础上得到的编码,是解决数据通信中电文编码的代码长度最短的编码方案。

图形结构是多对多的数据结构,内容有图的存储结构、基本运算、图的遍历、最小生成树、最短路径、拓扑排序、关键路径。这部分学习过程中,学生要掌握图的基本运算,还要掌握4 个典型算法: 普里姆算法、克鲁斯卡尔算法、迪杰斯特拉算法与弗洛伊德算法。拓扑排序、DFS、BFS 3 个算法通过不同思想将图转换为一个结点线性序列,将多对多非线性结构转化为一对一线性结构,降低了解决问题的难度与复杂度。

算法设计包括递归、查找与排序,递归思想在链表、数组、广义表与二叉树算法设计过程中都会用到,教学安排过程中,排在数组与广义表之前讲述。查找包括线性表的查找与树表的查找,线性表查找根据查找顺序表的特点分为顺序查找、折半查找与分块查找。树表分为二叉排序树与平衡二叉树,二叉排序树是一种具有特点的二叉树,通过对其中序排序得到从小到大的关键字序列。为了提高查找效率,提出了平衡二叉树,每一个结点平衡因子绝对值都不超1 的二叉树。

2 教学策略设计

(1) 利用先行组织策略准备线上课前预备性教学材料并规划学习进程,从预备性材料中抽象出新知识点,再运用各种学习活动对新知识点进行强化。以本课程第3 章第5讲顺序队为例,利用先行组织策略准备预备性教学材料有:上传队列教学视频3.9(队列定义) 3.10(顺序队) 3.11(环形队) 。看完视频完成预习测试。教师就队列与栈的知识点创建头脑风暴问题,总结预习活动,列出有疑问的问题与概念。

(2) 利用认知发展策略开展线下学习活动,以小组为单位,组与组之间开展竞争性学习,既锻炼了学生团队合作能力,又提高学生自主学习能力。教师为了激励学生主动性,可以设置加分制度,根据题目的难度与回答情况进行不同程度的加分。

以本课程第3 章第5 讲顺序队为例,利用认知发展策略开展的教学活动有:

分组:18Z 计科有50 位学生,分8 组,每组6 -7 人。由组长汇总每组在线上预习活动中遇到的问题(5min) 。组与组之间交换遇到的问题并讨论(10min) 。教师设置规则选出台上讲解小组,每组讲述时间不超10min。上台讲解组员可一位也可多位,组员表现直接影响整个组的成绩。教师总结学生讨论问题,并提出难度稍大问题继续给学生讨论(15min) 。学生可以通过查各种资料解决问题(15min) 。由抽选的小组公布讨论结果,教师总结课堂内容,布置线上作业。

(3) 本课程概念较多,利用概念形成策略,通过实例、练习等教学手段确认并理解概念。以栈为例,通过图例与练习让学生理解栈的特点,比如: 一个解释栈概念的实例,编号位1 2 3 4 5 的人依次进入一个宽度只够一个人的死胡同,也就是一段有口另一端堵住的一段空间,如果出来5 号先出,接着4 3 2 1 依次出,这就验证了栈的“先进后出”的特点。

(4) 本课程学习行为较为复杂,整体分为线上学习行为与线下学习行为,线上学习行为有: 投票问卷、头脑风暴、答疑讨论、测试活动、小组任务,线下学习行为有: 问题讨论、问题讲述、问题答辩、问题总结、问题拓展。教师利用随机管理策略对这些复杂学习行为进行强化刺激与系统地控制。本课程具体的随机管理策略有: ①线下及时总结。每次课每周都有学习行为总结,每次课上评出3 位优秀学生与3 位预警学生,每次课的优秀学生在平时分里加1 分,预警学生减1 分。这种管理策略可以刺激其他学生向优秀学生学习;②线下随机抽取。课堂上随机抽取学生回答或讲述问题,能够激励每位学生认真思考问题,再根据回答问题情况适当加分; ③线下分组管理。教师把部分管理权限下放给各组组长,组长是轮流制,每周换一次,组长对本组组员有分配任务与评价的权力; ④线上评价机制。教师或者助教通过创建学习活动,收集到学生线上学习行为数据,教师根据数据评价学生学习状况并以数据形式排名,前10 名学生给予加分奖励。

(5) 利用行为练习策略明确课程单元学习目的、环节与内容,通过练习行为使学生掌握与运用新技能、新结构,根据练习结果对成绩较差学生个别指导,提供重测机会。

本课程在教学过程中,使用过云班课、雨课堂与CourseGrading 3 个平台。云班课平台具有可以打乱题目顺序、限定时间、重做次数以及学生何时查看答案的功能。“打乱题目顺序”可以使每位学生显示的题目顺序都不一样,“限定时间”是根据题目数量与难度设置答题时间,如果有学生答题不理想可以选择重做,重做次数由教师设定。云班课也具有指定学生重测的功能,对于不达标学生教师指定重测,每人有一次重测机会。

CourseGrading 平台测试设置界面,这个平台具有编程题、接口编程题与片段编程题的作业类型,数据结构课程是与编程关系较密切的课程,需要利用编程实现设计的算法思想与分析算法的优劣。这个平台可以给学生更多编程练习机会,让学生了解算法思想及不同数据结构下算法之间的不同之处。

本课程主要利用雨课堂加强基础理论知识练习,通过练习掌握与理解基本概念与算法思想。该平台也具有练习时间限定设置与试卷查看限制、答案公布时间设置功能,可以限制学生练习时间与查看答案权限。雨课堂题型有单选题、多选题、填空题与主观题等,根据教学内容与难度选择适合题型。

(6) 混合式教学需要学生有较强自我管理能力,利用自我管理策略教给学生行为原则、自我估计方法、制定自我管理、自我决断与指导的计划,根据实际情况变化实施与修改计划。

本课程学习分为线上与线下,自我管理主要体现在线上学习过程中。为了加强学生自觉学习,养成自我管理习惯,需要给学生制定出各个时间段学习目标。比如,“栈”这一块,学生通过看上传的视频资料与课件,可以达到了解栈的概念与理解栈的特点,进而可以解决简单问题,根据目标达成程度给学生加经验值,此经验值与平时成绩是挂在一起的,经验值高的学生平时成绩会高。通过在视频中插入问题,学生对所学内容进行初步自我估计,遇到的问题通过自我指导方式解决。每个学生学习习惯不同,学习计划与学习目标也不同,随章节内容难度与自身掌握情况修改。

3 教学信息化设计

(1) 教学资源信息化。2016 年学校正式使用该MOOC里的教学资源进行教学。从上学期开始应用雨课堂与云班课,教师将《数据结构与算法》课程的教学视频、课件、单元测试题、章节测试题、试卷库与试题库等资源上传在线教学课堂。学生注册学习中国大学MOOC 平台的《数据结构》教学资源。学校图书馆拥有计算机专业中文电子图书36 500本,外文21 981 本; 拥有本专业电子期刊中文158 种,外文1 032种,这些电子资源为本课程的学习提供了大量的参考文献与学习资源。

(2) 教学过程信息化。课前,教师利用云班课上传预习课件与视频,布置学习任务,创建活动,使学生预习有目标,有压力,提高学习效率。课上,教师在云班课上开启签到功能,学生利用手机签到,签到后教师可以让学生抢答问题。教师搜集线上学生课前预习过程中的疑问与答错的题目,修改教学内容,并以课件形式投影到大屏幕上。学生课上可通过手机发问,教师可将问题抛给其他学生竞答,竞答正确的学生加适当经验值。课后,教师线上创建复习测试活动,学生在手机上完成,教师可指定个别未完成目标学生重测。教师分析学生学习数据,找出优秀与预警学生,实行因材施教。

(3) 学生学习信息化。学生学习分为线上学习与线下学习,线上学习主要使用手机登录学习平台完成教师布置的学习任务,对于不理解的内容可以在线向教师提出,教师进行答疑。本课程除了利用雨课堂与云班课平台以外,还使用了CourseGrading(CG) 教学平台,学生在CG 平台上提交作业。由于本课程要使用编程语言实现算法,CG 平台提供了编程题编译平台,学生在线编程测试数据。学生在线下学习过程中,使用手机回答教师即时推送的问题,展开组间竞争,增强了团队合作意识与协作、创新能力。

(4) 师生沟通信息化。通过使用微信、QQ、雨课堂、云班课等平台,教师与学生实现了实时交流。如果学生发现疑问或者问题,可以在任何时间任何地点与教师进行交流沟通。本课程建有微信群,学生可以在微信群里发布自己的问题,其他学生可以给予解答,教师可以进行指导解答过程。如果有些问题不好发在微信群里,可以私信教师,教师及时解决。

(5) 教学评价信息化。学校建设有综合教务管理系统,包括4 部分教学评价:教师互评、教师评学、学生评教、督导组专家评教。教师互评是教师之间通过互相听课给出评价,这个评价结果占最后总评价25%,可以促进教师之间的相互学习与督促。教师评学是任课教师对所教班级学生进行线上评价,这个评价依据是学生平时线上学习与线下学习的综合情况。学生评教是每一学期结束之前,学生对每一门任课教师的评价,包括教师教学准备情况、教师课堂教学情况以及教师线上辅导答疑情况等,这个评价数据占25%。督导组专家评价是学校或者学院督导组专家不定期对整个教学情况进行评价,可以是通过听课方式,也可以通过检查作业与试卷等方式进行评价,这个评价结果占总评50%。

(6) 考试测试信息化。测试分为线上测试与线下测试,线上测试利用雨课堂与云班课评价的测试功能创建相应章节测试活动。本课程利用CourseGrading(CG) 平台实现无纸化考试,CG 平台具有普通组卷与随机组卷的功能,确保每一位学生的周围试卷都不相同,并配置监考选项,包括内网监控、IP 地址绑定、IP 地址过滤与栏目关闭。这些选项只对参与考试的班级有效,考试结束,自动失效。

4 结语

本课程混合式教学是从各个教学平台采集数据分析个别学生存在问题,对其进行个别辅导与答疑,使其如期完成学习任务,达到教学目标。所有教学评价都是以“数据”为依据,这种评价方式较为公正与客观,能够正方向促进教学质量的提高。另外本课程采用启发式教学,在各个环节给学生不同启发性质的问题,学生通过思考问题获得新知识。对于没有解决的问题,教师采用引导式教学,。最后采用案例对所学知识进行运用,每组学生一个案例,通过案例学生锻炼了团队合作能力与运用知识的能力。学生在教师引导下进行探究式学习,参与每一次学习活动,包括讨论、答疑、测试等,锻炼解决问题的能力。根据学习情况,教师指定轮流制规则,让学生上台给大家讲解,这种亲身体验的学习活动获取的知识会更牢固。

猜你喜欢
二叉树算法评价
基于双向二叉树的多级菜单设计及实现
基于故障二叉树的雷达发射机故障诊断*
哪种算法简便
二叉树创建方法
一种基于SVM 的多类文本二叉树分类算法∗
Travellng thg World Full—time for Rree
进位加法的两种算法
根据问题 确定算法
2006—2016年度C—NCAP评价结果
2006—2015年度C—NCAP评价结果(3)