研究性教学方法在“数据结构”课程中的应用

时间:2022-03-29 05:45:54

研究性教学方法在“数据结构”课程中的应用

摘要:阐述了“数据结构”课程的重要性,探索“数据结构”的教学模式,在“数据结构”教学中对以分组为基础、问题为契机的研究性教学方法进行探讨和应用,提高了该课程的教学效果,培养了学生的创新能力。

关键词:数据结构;研究性教学;创新能力;教学效果

作者简介:纪玉玲(1975-),女,黑龙江大庆人,黑龙江八一农垦大学信息技术学院,讲师;刘丽杰(1982-),女,黑龙江哈尔滨人,黑龙江八一农垦大学信息技术学院,讲师。(黑龙江 大庆 163319)

基金项目:本文系黑龙江省教育厅项目“程序设计类课程研究性教学研究与实践”(项目编号:JG201210471)的研究成果。

中图分类号:G642 文献标识码:A 文章编号:1007-0079(2013)10-0092-02

“数据结构”不仅是一般程序设计的基础,而且是设计和实现大型系统程序和应用程序的重要基础,更是计算机学科专业核心课程之一,被公认是比较抽象也比较难的课程。该课程主要讲解程序设计中数据的组织、操作及效率问题。其教学目标是使学生深入理解线性表、树、图和集合四大数据组织结构特点,熟练地将其应用到实际问题解决过程中。[1]为了提高教学实效,达到既要培养学生对问题的分析能力、数据的组织能力,又要培养他们的程序设计实践能力,这对教师的教学提出了更高要求。为此,黑龙江八一农垦大学(以下简称“我校”)信息技术学院在“数据结构”课程的授课过程中,积极探索研究性教学理念和方法,经过三年的尝试及实践,取得了较好的成效。

一、教学方法改革的动因

首先,经过几年的教学实践和调查,大多数学生的感慨是:数据结构非常重要,但该课程内容抽象,算法枯燥乏味,理解起来比较困难,学起来也比较累,对学生造成不小的心理负担,影响学生学习的求知欲,降低了学生对程序设计的热情。

其次,传统灌输式教学方法出现了问题。绝大多数教师采用讲授法教学,即教师讲授、学生接受的教学方式,目的让学生在短时间内掌握大量的知识,但这种教学方法忽略了对学生的主动性和创造性的培养。[2]尽管教师积极改善教学手段,课堂气氛仍然沉闷,收效甚微。

笔者在教学实践中深感研究性教学理念的应用,能够给学生更多积极思考的空间和自由,能给他们更好的个性独立表现的机会,在教学中取得了明显的效果。

二、研究性教学的实施

1.教学内容的组织

以往教学过程中,教师总是绞尽脑汁地利用类比、演示等各种手段将“数据结构”中的四大结构特点、操作一一详细讲解,争取让学生理解并透彻掌握知识点,再实验验证解决问题。这从时间上割裂了理论和应用的内在联系,为此,研究性教学改善教学内容的组织形式,采用“应用-理论-应用”的教学模式。除了绪论外,每一章节依据章节原理先提出有代表性的问题,给出学习范围和参考资料,要求学生自己探索解决方案;下次课前半部分时间请同学分析讲解,回答教师和同学的质疑提问,最后教师讲评重点知识点,总结补充;再回到实验课堂进一步验证自己的算法思想。课堂上教师鼓励学生积极讨论,发现同学之间解决问题方式的不足和优点,促进学生思考,更好地发挥学生的主体作用,使其在理解掌握重点原理、知识点的同时精神愉悦,改善了课堂气氛,激发学习兴趣。

2.教学过程的实施

(1)学生组织。每学期开课初期,按照学生不同层次和资质大致分成五个组,每组6~7人,组内要有负责人,对查资料、记录、讲解等不同任务进行分工,需要组内同学互相协调、督促,集思广益,发挥团队协作精神。教师在课堂上记录并掌握每个同学的表现情况,使学生树立学习的责任感,也为以后的成绩管理做基础。总之,此阶段要让学生了解研究性教学的基本要求和过程、考评方法,引起学生的共识共鸣和重视。

(2)基于问题的情境教学,培养学生创造性思维。“数据结构”教学中需要多种教学手段相结合,但研究性教学过程主要是以问题为出发点,将学生定位为教学的主体,要求学生自觉地思考、主动地探索以寻找答案而开展教学活动的一种教学方法。例如,在线性结构中教师会给出问题:食堂排队打饭时,大家都在排队,一位同学说“我着急,可否让我排在你前面”,答案只有两种情况,一种可以,另一种不可以。两种情况如何解决?“可以”采用普通线性结构,“不可以”只有采用特殊的线性结构队列来解,即请到后面排队。学生只能到相应的章节翻书、找原理、查资料、研究文献来寻求不同的解决方法。学生的参与避免了简单概念的介绍,刺激了学生的好奇心,进而促进了他们分析、判断、解释、发现问题的能力。长此以往,更能改善学生的语言组织能力、思维方式和创新能力。基于问题的情境教学的正确使用对于激发学生学习的兴趣、调动学生的主观能动性、提高学生的素质和培养学生的创新能力方面将起到积极作用。

另外,教师在问题的设计过程中要把握好尺度,难度要适中。因为学生层次不同,问题既要具有启发性,又要能包括基本原理,这样才能引起全体同学的注意,学生在好奇心的促使下才能更进一步地探索问题的具体解决方法。

下次课给学生一个活跃的学习环境,小组成员将团队的思路详细讲解后,不懂的同学可以讨论质疑,变一个教师讲多个学生听的树结构形式为多个学生及教师间交流沟通的图结构方式来交换思想。教师不是旁观者,要对重点原理进行多媒体演示,给学生一个更生动形象的印象。同时,算法是计算机处理数据的操作步骤的描述, 算法的好坏直接影响到计算机的执行效率。[3]教师应对不同解决思路方法的优点和缺点加以点评。如对典型斐波那契数列(兔子繁衍问题)常用的迭代办法和递归办法实现(栈的应用)的区别,班级通讯录用结构体类型可以实现,用指向结构体类型的指针能不能做,如何做?哪种方式结构清晰,哪种会耗费大量的时间和内存,这样,学生对自己设计的算法有更深入的了解。

(3)考核方法。“数据结构”是理论与实践结合非常紧密的专业课程,改善后的考核方法由原来的理论成绩70%和平时成绩10%、实验成绩20%变更为平时成绩占40%、理论成绩40%和实验成绩占20%。较大比例的平时成绩使学生在研究性教学中积极主动参与到小团队的探讨研究中,以便争取更好的表现,课堂气氛也将会更活跃。教师的工作量无形中加大了,因为这要求教师对每堂课每小组对问题的分析、算法设计思路、语言表达能力、创新点、协作中的贡献几项做详细的记录,最后以权重方式记入最终考核成绩。此种考核方式提高了学生学习的积极性,更注重学生平时的表现和积累,更大程度上体现了成绩考核的公正和公平。[4]

3.需要解决的问题

首先,分组时要求组内同学能力要有层次,小组内部具有传帮带的团队精神,小组间具有竞争意识。放手完全让学生选择小组成员,学生肯定会强强联手,这组的实践能力会很强,那么剩下能力较弱的同学会有自卑感或者干脆放弃,这样肯定达不到想要的教学效果。教师必须对学生有一定的了解,这就要求分配教学任务时,教师的传授课程要具有串行性,即该班级的“数据结构”的前续课程“C语言程序设计”也应该由该教师教授,这样小组分配才具有相对的合理性。同时,这种教学分配方式不会完全孤立某门课程。完全独立地学习某门课程知识,很难清晰地了解其具体的应用价值,也就很难激发学生的学习兴趣,也必将影响到学生综合运用能力的提高。[5]

其次,在研究性教学中设计问题情境教学和指导学生团队合作的技巧,都需要教师具有较强的综合素质。教师自身必须经历过项目合作,从实际问题中找出适合教学的问题内容和经验,用自身的创新成果不断丰富和补充教学,[6]这对教师是一个比较大的挑战,更是一个长期的问题。

三、结束语

研究性教学方法是一种较新的教学方法,在各学校中都有所尝试和实践。黑龙江八一农垦大学将研究性理念应用于数据结构教学过程中,采用以问题为契机的研究性教学方法,收到了良好的教学效果,使学生的分析问题、组织数据、解决问题的能力得到显著提高。

参考文献:

[1]严蔚敏,陈文博 数据结构及应用算法教程[M].北京:清华大学出版社,2008.

[2]讲授教学法[EB/OL].[2012-01-20].http:///view/

6335672.htm.

[3]高翔,武新.数据结构教学策略研究[J].大庆师范学院学报,

2010,(3):157-158.

[4]高军.数据库原理及应用课程教学方法研究[J].牡丹江师范学院学报(自然科学版),2012,(1):66-67.

[5]田志波,刘美,廖晓文,等.CDIO理念下测控专业多课程融合式教学研究[J].中国电力教育,2012,(29):60-61.

[6]许艳,蒋寅,袁梦.研究性教学方法在《数字逻辑电路》课程教学中的实践[J].现代计算机,2010,(2):58-59.

上一篇:论南方地区路隧道施工技术 下一篇:有关工业建筑计划新思路的介绍