数据结构课程教学过程中的教师主观能动性研究
2020-07-14马靖善刘雪娜
马靖善 刘雪娜
摘 要:本文提出了教学过程中充分发挥教师主观能动性是完成教学任务的前提和保障。强调教师首先要全面系统掌握所授课程的知识体系和教学特点。其次,发挥主观能动性要落实到授课各个环节。着重指出充分备课是关键;教学方法要灵活多样,同时提出教师要有把控课堂的能力。
关键词:数据结构;算法;教学方法;主观能动性
一、引言
作为一名高校教师,如何把握课堂教学过程,在有限的时间里教授给学生更多的知识,让学生能够牢固地掌握所学知识,提高教学效率,是每个教师应该考虑的重要问题。这就涉及到教师在教学过程中的主观能动性,主要有如下几个方面。
一是教师要全面系统地掌握所讲课程的知识,熟练地掌握课程整体构成。
二是教学方式和方法适合于课程教学,能吸引学生的注意力。
三是掌握教学过程的每一个环节,并把控好课堂秩序。
四是教师要有人格魅力,为人师表,能够得到学生的认可。
本文就数据结构这门课程的教学体验,阐述高校教师如何提高教学过程中的主观能动性。
二、数据结构课程体系研究
数据结构课程是计算机及相关专业必修的核心课程之一,是计算机专业考研的必考科目之一。
数据结构主要讲述的是算法与实现。如何编写出一个好的算法是程序设计的关键所在。数据结构这门课程提供了很多好的算法,多数算法是固定的,学生只需要理解和掌握即可。还有一些算法是要自行设计的,这部分就要看学生的算法设计思想和编写技术能力如何,这里没有固定的题目,是最具挑战的部分。
(一)数据结构课程主要内容
1.基本概念
数据结构中基本概念很多,一定要注重理解和掌握,只有掌握了这些基本概念,才能依据题目要求编写算法和完成一些固定的算法操作,如算法和存储的基本概念、二叉树的基本概念和性质等。
2.固定算法
数据结构中很多算法是固定不变的,一定要理解并掌握,掌握一些常用的算法对提高自身编写算法的思想会有很大的帮助,如线性表的插入和删除算法、折半查找算法、各种排序算法等。
3.体现固定算法思想的操作
这部分内容最能体现对算法思想的理解程度,只要掌握了算法的基本思想,不用编写算法就能完成题目的要求。例如,用一组整数建立一棵二叉排序树。
4.自定义算法的设计与实现
这部分内容题目非常灵活,也是考研等数据结构考试中必考的内容。是否完整系统地掌握了“数据结构”课程,主要是看能否完成自定义算法的设计与实现。
(二)数据结构课程教学特点
根据数据结构课程的主要内容,数据结构教学过程的特点是:讲清基本概念和常用算法的基本思想,通过编程实践来验证算法的基本思想实现过程,编写一些自定义算法的程序实现。
基本概念的讲解过程不能平铺直述地抽象讲授,要结合一定的算法过程来讲。例如,算法时间复杂度的概念,就要结合算法程序分析来阐述说明。数据结构课程中有很多这样的基本概念,只有讲清楚这些基本概念,才能在理解算法设计过程中不产生偏差,也才能为算法设计打下坚实的基础。
要掌握常用算法的基本思想,这些算法基本上是固定不变的,只有掌握其基本思想才能真正理解算法的精髓,也就很容易记住算法的实现过程。掌握了常用算法的基本思想,也能很顺利地给出操作过程描述。例如,起泡排序的基本思想是“相鄰的两个数据比较,有反序则交换”,只要牢固地掌握了这个基本思想,就很容易理解和掌握起泡排序算法的实现过程。
要真正掌握算法,还必须要经过编程实践,将依据算法编写的程序在机器上实现,并观察和分析结果的合理性。这一点很重要,对牢牢地掌握算法是有决定性意义的。
三、教师在教学过程中的主观能动性作用
依据数据结构课程的教学内容和特点,要提高这门课的教学质量和教学效果,教师如何上好这门课是关键。在数据结构课程教学过程中充分发挥教师的主观能动性是完成教学过程的前提和保障。
(一)备课充分
要想讲好一门课程,充分备课是关键,课程体系中的每个环节都要印在教师的脑海中。每节课讲什么,用什么教学方式方法合适,预判学生听课时的反响并给出解决方案,布置什么样的作业,等等,都应该是教师在备课时花费的心血。
准备好教案是备好课的关键。无论多么熟悉的课程,都应该事先准备好教案,新课就更要好好准备。课程内容可能会有更新,要重新备课;授课对象已完全不同,原来教的二年级学生,现在可能是新生;原来教的是计算机专业学生,现在可能是其他专业的学生;原来的教室有多媒体教具,现在的教室可能只有黑板等等。这些信息都要求教师重新备课,更新教案。即使是讲授过多次的课程,在上课之前也应该准备一下授课内容,做到心中有数。
(二)教学方法恰当
每位老师都有自己的讲课特点和教学方法,结合每一门课程教学的特点,也可以有不同的教学方法和教学手段。笔者认为把基本概念讲清用什么样的教学方法均可,笔者教学实践发现在板书下讲解或直接在Word下边打字边讲解效果更好些。在算法思想的讲解上,应该尽量使用较为灵活多样的教学方法和手段。例如,通过多媒体教学过程演示算法的基本思想,通过在编程环境(如VC++)下直接对照基本思想编程,再得到满意的运行结果,这种教学方法能够让学生更加直观地理解和掌握算法的基本思想和编程方法。在讲解算法操作后,应该让学生及时练习,并在实验课上让学生编写讲过的算法程序,使学生牢记算法思想的同时,提高编写算法程序的能力。
本文将示例中序递归遍历二叉树的教学过程。图1是一棵二叉树的样例。
1.中序遍历二叉树的基本思想
先按中序遍历左子树,再访问根结点,最后按中序遍历右子树。
在教学过程中,可以先采用多媒体教学方式将这棵二叉树的遍历过程演示出来,然后给出中序遍历的结果(FDCGHAIEB)。若没有多媒体课件,也可以在Word下利用Word绘图功能进行演示,或者用教师自己擅长的教学手段进行演示。
2.练习
教师画出几棵二叉树让学生进行练习,很快就能掌握中序遍历的思想。
3.写出算法程序
void inorder(BitTree *T) // 中序遍历的递归算法
{ if(T!=NULL) // 根结点指针不为空则执行如下操作,否则退栈
{ inorder(T->lchild); // 按中序遍历其左子树
visit(T->data); // 访问根结点(可以换成输出语句)
inorder(T->rchild); // 按中序遍历其右子树
}
}
4.上机操作
上面的算法,有条件时老师可在教学过程中通过编程环境演示编程过程。在实验课上学生要编写程序运行出结果。
这样,学生应该不难掌握中序遍历二叉树的算法和思想。
(三)把控课堂
教师教学过程必须要把控好课堂教学秩序。把控课堂的能力也是教师必备的一项教学技能。
作为一名合格的教师,个人修养很重要。教师应该做到为人师表,一切为学生的学习着想,尽职尽责讲好每节课,重点还是应该放在传道授业解惑上。只有努力教学,才会得到学生们的认可,学生才会配合你的教学过程。
教师一方面要上好课,另一方面还要管理好课堂。要讲清开设这门課程的必要性和用途,规定好这门课程学生所需的必备物品。总之,应该对学生上课有要求,对达不到要求的学生应该有处理措施。
好的教师应该懂得幽默,在教学过程中适当地幽默一下,可以活跃课堂气氛,也能让学生另眼相待。
(四)做好导课和总结
导课和总结是教学过程中重要的两个环节。一般地,通过复习上节课的教学内容引出本节课的教学内容即可完成导课。导课过程可以将讲过的课程串联起来,保持教学内容的连贯性。另外,在本节课程结束前应该有个小结。本节都讲了哪些内容,哪些内容应该了解,哪些内容要重点掌握。最后应该留些作业或练习,供学生们课后学习。教师要认真批改学生作业,及时把作业批改结果反馈给学生,并耐心解答学生疑问。
四、结语
教师主观能动性的发挥对课程质量有着重大而深远的影响,是提高教学满意度的重要途径。本文以数据结构课程为例,系统地分析了在授课过程中如何落实和发挥教师主观能动性。本文总结出的这些经验和方法在教学实践中取得了较好的效果,也希望对同行有所帮助。
参考文献:
[1]秦玉平,马靖善.数据结构(C语言版)(第3版)[M].北京:清华大学出版社.2015.
[2]张希胜.教师教学主观能动性的发挥与教育质量[J].教学研究,2006(4):306-309.