APP下载

算法与数据结构实验教学的改革探索

2018-04-15湖北民族学院信息工程学院

电子世界 2018年5期
关键词:数据结构实训实验教学

湖北民族学院信息工程学院 向 静

算法与数据结构是计算机专业的一门核心基础课,也是一门理论和实践紧密结合的课程。其中涉及大量抽象数据类型及算法应用,课程教学既要为学生打下坚实的理论基础,又要注重培养学生的实践能力,从而提高学生的抽象思维和创新能力。而该课程的实验课是学生验证、掌握和应用数据结构理论知识的重要途径。通过实验解决数据结构中的一些典型问题,既能帮助学生更好地理解、消化和掌握课堂教学内容,又能在解决实际问题时,使学生学会如何把算法和数据结构更好地结合,灵活的运用,培养学生分析问题和解决问题的能力。结合作者多年的数据结构教学经验及我校实验教学现状,我们就算法与数据结构实验课的内容设置和教学方法进行了研究和分析,希望为探索算法与数据结构实验教学改革提供思路。

1.数据结构实验教学现状

和重视度不够。实验内容中验证性实验偏多,综合设计性和探索创新性实验偏少,影响学生探讨问题的积极性和创新能力的提高,学生虽然完成实验,但是实践工作量严重不足。另外实践教学体系不完善,实验教学缺乏过程监督和管理,老师的指导仅限于在实验室的课内时间,时间和空间上的局限使得学生在实践过程中不能及时解决遇到的问题,导致问题越积越多,从而失去学习信心。

(4)实验考核方式单一

我们对数据结构实验教学的考核主要是通过实验报告,虽然上机实验有一定的过程控制,但由于实验学时有限,教师精力有限,同学之间、师生之间缺乏交流,教师很难真正了解学生对知识与技能的实际掌握情况,单凭实验报告并不能客观真实地反映学生的实际实验情况。因此,实验考核手段单一不合理,不能全面体现学生的学习情况。

由于算法与数据结构课程内容抽象,逻辑性强,学生学习的兴趣和主动性不够,教学效果不理想,在实验教学中普遍存在以下问题:

(1)理论教学与实验教学脱节

算法与数据结构课程涉及的知识面广、理论抽象、程序复杂。在整个教学过程中,教师往往注重讲授理论知识,而忽视了学生的学习兴趣与实际应用的结合。同时,数据结构课程中的各个知识点之间的联系性较弱。所以面对繁杂的知识点,学生难以快速地将实际问题和相应知识点联系起来,构建算法的框架,编写可执行的程序,导致在实验过程中毫无头绪,从而造成畏难情绪。时间越长,学生的挫败感越重,有的学生逐渐对数据结构课程失去兴趣,这样对学生专业素质、应用及创新能力的提高都有影响。

(2)学生语言基础和算法设计基础薄弱

我校数据结构实验选用C 语言作为实验平台,学生在学习C语言时,很多语法问题理解的不透彻,如:动态分配函数、指针调用、函数参数传递等。数据结构理论课程教学中采用类C语言作为数据结构和算法的描述语言,很多问题只有算法思路而无具体程序代码。因此,学生在编程实现的过程中常出现很多编译调试错误,而且很多无法自行解决,从而较大的影响了自主编程的积极性。学生把重心放在语法错误的调试上,而偏离了对算法核心思想的理解。

(3)实验内容陈旧,实验指导形式化

实验教学的内容一般都沿用了好几届。很多学生上机时,没有按要求提前作预习和准备,而是直接进入编译环境编写程序。学生对问题思考的不深入,对算法设计缺乏耐心,整个实验过程投入度

2.数据结构实验教学改革

针对以上数据结构实验教学模式中存在的问题,提出了实验教学的几点想法和建议,以此为契机推动数据结构实验教学的改革:

(1)实验教学内容层次化

实验教学内容应该根据数据结构课程的内容层次和学生的层次设计,可以把实验内容分为三个层次,验证性实验、拓展性实验和综合设计实训项目,每个层次针对不同能力的学生。验证性实验给出了算法与数据结构中各种具体数据结构的基本操作的实现,可以很好地帮助学生理解教材中的算法,褪去算法的抽象性,顺利地从理论过渡到实践。拓展性实验是针对课程内容中的某个知识点进行具体应用,以解决简单的实际问题,面向学有余力的学生。综合设计实训项目,服务于学生进行阶段性的实践活动。其中精选的实验内容具有典型性,且每个问题强调应用教材中相应的若干知识点解决问题,具有一定的设计量和难度,通过综合实训培养学生进行复杂程序设计的能力和分析解决问题的能力。综合实训项目可以采用小组的形式完成,这样也有利于培养学生的团队协作精神。

(2)实验教学方法多样化

实验教学要想取得令人满意的教学效果,必须综合运用多种教学手段。实验内容应提前布置给学生,并以文档的形式对相关内容进行说明,这样在实验课上学生就有充足的时间调试程序并向老师请教答疑。验证性实验,教师应在实验前对所涉及的相关知识点及操作流程进行讲解,让学生做到有的放矢,不至于盲目展开实验。拓展性实验,教师可以采用启发式教学,对关键技术方案进行指点,以帮助学生快速构建算法框架。拓展性实验的主要对象为动手能力较强的学生,通过启发式教学,能够更大程度上激发该类学生的学习兴趣和钻研精神。对于综合实训项目,教师采用项目管理的模式教学,按照软件工程的流程,带领学生进行需求分析、确定实施步骤和计划并确定小组成员的分工。多种教学方式的综合运用,将对不同基础的学生因材施教,取得意想不到的效果。

(3)实验管理模式和考评体系合理化

由于数据结构实验内容多,实验课时少,很多实验任务需要学生利用课余时间完成。可以通过合理整合利用机房资源,适当开放机房让学生在课余时间完成实验内容。还可以构建数据结构实验课程教学平台,将相关实验案例、实验指导、源程序代码以及习题和答案等教学资源发布在平台上,师生就能通过实验课程教学平台进行互动,并进行辅导答疑和在线讨论。实验考核方式要严谨而灵活,实验评价体系要公正合理,要能真实客观地反映学生的能力和水平。对于验证性实验结果,学生要能做出简单分析。拓展性实验,学生要有设计思路,算法框架,程序代码和正确运行结果。综合实训项目可以采取小组现场演示答辩的考核方式。

3.结束语

文章针对数据结构实验教学中存在的相关问题,从实验教学内容,实验教学方法,实验管理模式和实验考核评价体系等方面提出了相应的改革措施。经过在我校实践,已取得了一定的教学效果。实验教学最大的改进在于实验课程从课堂到课外的延伸,能使大部分学生真正体会到自己动手编程的乐趣,使学生学有所获,学有所成。真正能够起到算法与数据结构这门课的承上启下的作用,为学生后续专业课的深入学习打下良好的基础。当然,在实验教学中还有很多问题值得探讨,在以后的实验教学过程中我们还将继续进行相应的优化和改进。

[1]唐佐侠,孙春志.数据结构实验教学改革与探索[J].商丘师范学院学报,2017,33(3):103-104.

[2]刘晓静等.以创新人才培养为目标的数据结构实验教学改革[J].实验技术与管理,2014,31(11):184-187.

[3]陈红梅等.数据结构实验课程教学方法探索[J].当代教育理论与实践,2015,7(4):66-68.

猜你喜欢

数据结构实训实验教学
小议初中化学演示实验教学
电容器的实验教学
对初中化学实验教学的认识和体会
基于CDIO理念的数控实训教学改革与实践
电工电子实训教学改革与创新
几何体在高中数学实验教学中的应用
“翻转课堂”教学模式的探讨——以《数据结构》课程教学为例
高职高专数据结构教学改革探讨
微课在数控实训课中的应用探析
TRIZ理论在“数据结构”多媒体教学中的应用