应用型本科院校《数据结构》微课及教学改革研究

2020-04-08 09:30李曼石锋张少应
电脑知识与技术 2020年3期
关键词:双向互动应用型本科院校数据结构

李曼 石锋 张少应

摘要:按照“全面建设合格课程,重点建设学院重点课程,创建学院优质课程”的建设思路,不断进行课程教学改革与创新。针对目前《数据结构》教学中存在的问题,进行应用型本科院校《数据结构》课程教学目标及教学对象分析,提出了从教学内容组织、教学方法、实验教学和考核方法四个方面进行教学改革的方案。以陕西省第二届微课竞赛三等奖作品为例,分析数据结构中《栈的应用》中的主要知识点、教学设计及授课效果。教学实践表明:该方案的实施可取得明显的教学效果。

關键词:微课课程;应用型本科院校;教学改革;教学方法;双向互动

中图分类号:G642 文献标识码:A

文章编号:1009-3044(2020)03-0130-03

《数据结构》是计算机科学与技术专业、软件工程及相关专业的一门重要专业基础课。通过该课程的学习,使学生能够针对实际问题,分析数据之间的关系,设计合理的存储结构和算法[1],为后续课程学习打下良好的基础。学生学好该课程,对于学习其他课程、考研以及培养解决问题[2]的能力等至关重要。因此,该课程教学改革的研究具有非常重要的意义。

按照“全面建设合格课程,重点建设学院重点课程,创建学院优质课程”的建设思路,加强课程建设,不断进行课程教学改革与创新。针对目前《数据结构》教学中存在的问题,提出了从教学内容组织、教学方法、实验教学和考核方法四个方面进行教学改革的方案。

1《数据结构》教学目标及教学对象分析

1.1 教学目标

通过《数据结构》的学习,知道《数据结构》这门学科的性质、地位和独立价值[3];理解算法在数据结构中的地位和作用;知道数据结构的研究范围、研究方法、研究现状和未来发展趋势[4];掌握数据结构的理论实质内涵;熟练掌握数据结构算法实现的基本方法。

1.2 教学对象分析

《数据结构》的教学对象是计算机科学与技术专业、软件工程专业的本科二年级学生,此类学生在学习《高级语言程序设计》课程的基础上,再学习《数据结构》课程,就具有比较坚实的理论基础[5],具备用C语言开发应用程序的能力,能够更加深刻的理解和领会《数据结构》中算法的实现思想和实现过程。

课程开设前,组织学生召开教学联系会,通过和学生面对面的交流,发现学生对基本语法、基本概念掌握情况,如单个知识点掌握较好,但综合应用能力较弱,动手能力有待提高。

在学习、研究《数据结构》课程标准以及本课程现在所用教材的基础上,对教学内容进行精心设计,在教学实施过程中注意采用灵活多样的教学形式,引导学生在学习过程中养成积极思考的习惯,激发学生的学习热情,最大限度发挥学生的主观能动性和创新精神,培养学生的探究意识和科学精神。

2《数据结构》的教学组织与微课举例

《数据结构》是一门专业技术基础课。贯穿《数据结构》的命脉是存储结构和算法描述[6],而描述又是围绕线性结构和非线性结构进行的。每个章节之间既相互独立,又相互联系。教学中,如果能抓住主线,理清其内在联系,对整个内容进行有机整合、合理安排,必将起到事半功倍的效果。

本课程制作SPOC平台,通过课程建设将课程视频、课件、大纲、评论、问答、辅助教学资源等上传至平台,学生可通过账号进行学习。根据课程内容,召开相关见面会、团队成员一起进行微课的设计,包括字幕配音稿,音乐,素材,相关图片,拍摄模式(外景拍摄模式+扣像模式+背景虚化模式)等构成。本课程每周4课时,共64课时,录制视频时每个知识点大概10-15分钟,至少录全部章节的一半章节内容。

2.1 线性结构

线性结构包括线性表、栈和队列、串、数组和广义表。其中,线性表是最基本、最简单的一种线性结构(7J,掌握了它的原理及操作方法之后,对于栈、队列和数组的教学就非常容易。因此,应该将线性表作为教学的重点,并以它为主线带动其他章节的教学。在教学中,要重点分析其本质,并讲清其内在的区别和联系。

以陕西省第二届微课竞赛三等奖作品为例,分析数据结构中《栈的应用》等主要知识点授课。栈是限定在表的一端进行插入和删除操作的线性表,特点是“后进先出”。本微课用一个实际问题引入教学,激发了学生的学习兴趣。采用PPT、flash动画和算法演示系统辅助教学,采用“问题链式”等多种教学法相结合,层层递进地与学生双向互动,依次解决了以下几个方面的问题:

1)栈的出栈序列如何求解?

2)中缀表达式求值如何通过堆栈来实现?

3)后缀表达式求值如何通过堆栈来实现?

最后用所学知识成功解决了开篇提出的问题,为课程的学习画上了一个圆满的句号。通过本微课的学习,达到以下教学目的:

1)学生了解栈的定义和特点。

2)学生掌握用堆栈进行中缀表达式求值的实现方法和算法思想。

3)学生掌握用堆栈进行后缀表达式求值的实现方法和基本步骤。

重点内容是栈的特点和栈的应用。难点是中缀表达式求值和后缀表达式求值。

2.2 树形非线性结构

非线性结构包括树和图。主要涉及树和图的各种算法、知识要点以及在工程中的应用。其遍历算法的本质是将一个非线性结构转化为线性结构。

树的重点是二叉树,主要介绍二叉树的概念、存储、算法,树的遍历及线性化。重点要讲清楚平衡二叉树、排序二叉树、满二叉树、完全二叉树及最优二叉树的概念,以及它们之间的关系,进而使学生对二叉树有一个全面、清晰的理解。

2.3 图形非线性结构

图这一部分要以存储结构邻接矩阵、邻接表、十字链表的教学为重点,对每种存储结构,分析其利弊关系。图的应用如最小生成树算法、最短路径算法、关键路径算法等也是这部分教学的关键,学生往往难以理解和接受。这就要求教师详细分析其算法的思想,以及其来龙去脉。在学生有困难的情况下,教师可以提供给学生算法的源程序,并让学生上机实践。

排序和查找也是以线性结构和非线性结构为基础的。如查找过程和排序过程都可描述为二叉树,因此,这部分内容应把讲授的重点放在介绍其思想和方法上。

3《数据结构》的教学方法与微课教学设计举例

3.1 教学方法

根据教学内容的特点,一般采用“问题链式”教学法、启发式教学、研讨式及案例式教学等多种教学方式。

针对《数据结构》课程层次性,逻辑性很强的特点,老师主要采用“问题链式”教学法,并通过flash动画演示、课堂讨论、“启发式”教学等多种教学方法和手段,进行课堂教学。学生主要通过讨论、提问等方式进行学习。

“问题链式”教学法的一般模式是首先通过引入,提出问题,然后解决问题,再提出问题,解决问题等等,以此类推,环环相扣,形成一个问题链。“问题链式”教学法,其本质是以“问题”贯穿整个教学过程,以实现教学目标,培养学生思维能力,激发创新潜能。

针对数据结构教学内容抽象、不容易理解、算法复杂等特点,进行实验教学方面的改革。采用算法演示系统与C语言环境相结合的方式进行教学。算法演示系统可以动态地演示数据结构算法执行过程,使得抽象问题具体化,增加学生学习的积极性和主动性。注意教学方法的灵活性,组织学生进行问题教学、阅读指导、研讨、师生互动等,尤其是通过观看演示模式,使复杂的理论知识形象化,具体化,增加学生的学习兴趣,提高教学质量。提供给学生一些思考题,然后组织学生讨论,培养学生发现问题、分析问题、解决问题的能力和探究意识。

在教学媒体使用方面,重点研究多媒体等现代化教学媒体的应用,充分发挥其在教学中的形象、直观等优势[8],以利于提高教學效果。在多媒体课件的制作中,突出本课程教学过程中重点、难点的演示,对一些抽象的内容以动画的形式展示,帮助学生理解学习。

3.2 微课教学设计

下面以10-15分钟的微课课程《栈的应用》为例,如表1所示,进行微课教学设计。

4 课程教学改革

4.1 微课教学改革效果

在学习、研究《数据结构》课程标准以及本课程现在所用教材的基础上,对教学内容进行精心设计,在教学实施过程中注意采用灵活多样的教学形式,引导学生在学习过程中养成积极思考的习惯,激发学生的学习热情,最大限度发挥学生的主观能动性和创新精神,培养学生的探究意识和科学精神。

采用微课的授课方式、“问题链式”教学法、启发式教学、研讨式及案例式教学等多种教学方式相结合的方式的教学,效果良好,作者所讲授《栈的应用》作品获得陕西省第二届高校教师微课教学比赛三等奖。

1)变“被动学习”为“主动学习”,培养学生的创新性思维。

2)使学生从感性认识上升到理性认识,使教材内容化难为易,化抽象为具体,达到掌握知识的教学目的。

4.2 课程教学模式改革

教学模式一般可以分为集体授课和个别学习两种,目前教研室所承担课程的主要教学模式是集体授课方式,充分调动“教”和学生“学”两个方面的积极性,让学生始终主动参与教育教学过程。其中教学班是主要的教学组织,班级授课制是目前教学的主要组织形式。在教室合班或单班上课均可,建议每周安排2次课,即4学时。针对某些期班的特殊情况,可以采取个别学习的方式。

4.3 实验教学改革

实验课教学,在软件工程验室进行,确保单人单机,建议理论课开始20学时后,安排每周1次实验课,即2学时。教学中加强实验室教学这一环节,实验内容结合DOS、Windows操作系统平台,包括线形表的实现、栈的表示与实现、二叉树的先序遍历、二叉树的后序遍历以及二分法查找的实现等不同深度。让学生动手操作、编制模式、上机调试。对每个实验,均要求学生完成实验报告。

学生业余学习场所应有校园网网络资源,以便学生充分利用数据结构网络资源进行课程内容温习,为学生充分发挥学习潜力创造较大的空间和提供良好的平台。

4.4 考核方式改革

1)考核目的

这门课程的考核目的是评价学生对《数据结构》课程的理解与掌握程度,通过分析算法、上机实验等实践环节,检测学生发现问题、分析问题和解决问题的能力,使学生具有较强的算法收集、分析、编写能力;能够在学习、研究过程中发现问题,并能够运用所学知识去分析解释,有一定的独立思考、分析概括和创新能力。

2)考核方法

这门课程一门考试课,一般应安排在课程末或期末进行,采用笔试考试(80%)和实验考核(20%)相结合的形式进行。笔试考试时间为120分钟,实验考核成绩以实验报告和上机完成情况给定。

5 结束语

由于《数据结构》是计算机专业的骨干、核心课程,也是大多数学校研究生入学考试的必考课程,因此,对于该课程的教学,不仅要从理论上进行探讨,还要从内容组织、教学方法等方面进行研究。

《数据结构》是计算机科学与技术专业、软件工程及相关专业的一门重要专业基础课。也是大多数学校研究生入学考试的必考课程。结合陕西省获奖作品《栈的应用》,我们提出了从教学内容组织、教学方法、实验教学和考核方法四个方面进行微课及教学改革的方案,并在教学中进行了实施。选用较为适宜的教学方法和比较科学、先进的教学手段,有利于培养学生实践能力和创新精神;构建“自学指导,课外训练、实践实验技能训练”三大课外自主学习体系建设,建立网络教学资源库,教学效果良好。

参考文献:

[1]付向艳,蒲伟华,郭莹莹.基于雨课堂的《数据结构》教学改革与实践[J].教育天地,2018(5):223-224.

[2]蒋翠玲,万永菁,袁伟娜.基于微课与CDIO模式的数据结构课程教学改革[J]化工高等教育,2018(3):57-61.

[3]刘平山,张瑞霞,周娅.微课移动学习系统设计与教学实践[J].当代教育理论与实践,2016,8(5):85-87.

[4]王海艳,骆健,基于微课的《数据结构》多元化教材建设研究[J].教育教学论坛,2017(25):205-206.

[5]赵庆聪,基于翻转课堂的数据结构课程实验教学模式研究[J].大学教育,2016(02):9-10.

[6]刘晓静,王晓英.基于翻转课堂的数据结构与算法课程教学实践[J].微型电脑应用,2015(31):18-19.

[7]张瑞霞,文益民,周娅,等.数据结构课程微课设计与应用研究[J].计算机教育,2015(16):59-62.

[8]唐世刚,钟万林.互动式教学模式构建研究[J]教育理论与实践,2013(18):42-43.

猜你喜欢
双向互动应用型本科院校数据结构
现代职教视野下整合家庭资源育人的策略研究
浅谈英语中考备考策略
当代家族与村民委员会的双向互动
高职与应用型本科院校协同开展技术应用型本科教育课程衔接的探析
社会参与美国社区学院治理及对中国应用型本科高校治理的启示
“翻转课堂”教学模式的探讨——以《数据结构》课程教学为例
TRIZ理论在“数据结构”多媒体教学中的应用
《数据结构》教学方法创新探讨