基于ACM—ICPC竞赛模式的数据结构实践教学改革研究
位置: 首页 >范文大全 > 公文范文 > 文章内容

基于ACM—ICPC竞赛模式的数据结构实践教学改革研究

2022-10-21 10:40:05 来源:网友投稿

摘要:该文研究了当前高校中数据结构实践教学现状,分析了存在的问题,对理论和实践教学中存在的问题进行了探讨,针对这些问题提出了结合ACM-ICPC竞赛模式,对数据结构实验教学进行改革,提升了数据结构课程的教学效果。

关键词:数据结构;教学改革;竞赛模式

中图分类号:G642 文献标识码:A 文章编号:1009-3044(2018)23-0154-02

数据结构是一门研究非数值计算的程序设计问题中计算机的操作对象以及它们之间的关系和运算等的学科,它是计算机专业的基础课,同时,其他专业也经常选修此课程。数据结构相关知识具有较强理论性,它涉及的领域很广,要很好的掌握其理论,灵活运用,则要求学生有很一定的程序设计能力,对实践教学要求较高。

ACM-ICPC(ACM International Collegiate Programming Contest,ACM-ICPC)是由国际计算机协会(ACM)主办的国际大学生程序设计竞赛。要求一组学生通过在线提交,在五个小时内完成指定的题目,通过竞赛展示大学生创新能力和团队协作精神,压力编程和分析解决问题的能力[1]。涉及的知识范围很广,包括动态规划DP、组合数学、图论、数论和搜索算法等[2]。结合ACM-ICPC的特点,将其引入数据结构实践课的课程改革,以竞促学的培养模式是符合教育部关于大大加强实践教学改革思路的[3]。

1 数据结构实践教学现存的问题

1.1 适合教材匮乏

高校中数据结构的教材大多使用清华大学严蔚敏编著的《数据结构》,本书中的代码是C语言或类C语言的伪代码,代码难度较高,编程基础能力差的学生很难实现,影响了学生的积极性。另一方面,很多高校开设相应的数据结构课程设计等实训课程,但是教材水平参差不齐,内容枯燥,没有趣味性和针对性,很难满足实际教学要求。实际教学过程中,教材中的例子偏向理论,趣味性和实际应用不足,带来学生的学习兴趣不高。

1.2 重理论,轻实践

实践教学环节是巩固理论知识和加深对理论理解的有效方法,课程的实践教学是通过编写程序加深学生对数据结构及相关算法的理解,是培养程序设计能力和解决问题能力的重要环节,在数据结构的实际教学中,受到传统教学理念的影响,教师在教学过程中更加重视基本理论和原理的讲授。在教学中,教师一般只注重验证性实验,设计性和综合性实验少,缺乏对学生综合运用能力和实际解决问题能力的培养。教师实践教学能力不足,也没有重视实践教学环节,学生实践课时不足,忽略了对学生分析问题和解决问题能力的培养,实践教学滞后于理论教学。

1.3 实践教学授课和考核方式落后

当前数据结构实践教学方式主要是以教师给出题目和参考代码,学生录入代码,然后运行程序,结果出来即可。实际教学中,学生的编程能力水平参差不齐,编程能力强的学生通过提前预习,实验时很快就完成了验证输出,上机编程变成了简单的打字,实践课程对学生的编程能力提升有限。对于复杂的设计型题目,学生又不知如何下手。网络和移动互联网的快速发展,部分题目可以从网络上寻找答案,甚至可以下载源码参考,能力差的学生下载代码提交程序,失去实验目的,教学效果不好。

数据结构考核很多高校采用期末笔试为主,实验实训作为参考的方式,课程评定由期末考试和平时成绩决定,平时成绩由出勤、作业、课堂表现和实验成绩构成,实验成绩在总成绩中所占比例较少,学生积极性不足。考试的内容局限于教材中的基本理论和基础知识,反应多个知识点的综合题较少,分析问题和解决问题能力考核不够。

2 数据结构实践教学改革

2.1 改革实验内容

ACM-ICPC的题目有其规范化的要求,命题有格式化的规范,主要包括题目描述、输入输出要求及格式化。如果把数据结构相关理论知识描述成竞赛题的形式,有助于提升兴趣,培养学生的竞争意识。在设计题目时,引入参与式教学,鼓励优秀学生参与题目设计,提升学生的参与度和成就感。按照数据结构中的线性结构、树和图的知识点,以解决问题为导向、以提升编程水平和培养解决问题能力为出发点,按照知识点设计数据结构训练习题集,每道题目提供基本的标准测试数据集、极值测试数据集和相关答案数据集合,上传到高校内网的在线评测平台,作为平时练习和期末考核的基础。

设计的题型分为简单型和应用型,简单型题目侧重于基本编程能力、掌握知识点为目的,基本型题目主要覆盖线性结构、图、树、排序和查找等知识点。应用型题目侧重各类数据结构和复杂数据结构的相关算法设计、思维能力培养,着重培养学生的创新能力。将数据结构以数据结构和算法为主导的学习方式,改为以解决问题能力培养为导向的训练模式,锻炼和培养了学生选择数据结构和相关算法的应用能力。

在做好自己原创训练题目的同时,可以依托已有的ACM-ICPC在线测评平台,例如杭电ACM(acm.hdu.edu.cn)支持教师自定义竞赛,可以自主设计题目和测试数据,也可以使用杭电已有的题目和测试数据,避免一些重复性工作,大大降低了教师的工作量。

2.2 改革传统作业提交方式

ACM-ICPC的在线评测系统是一个练习和编程平台,为学生提供一个开放的、自主学习的实验环境。在平时提供大量的数据结构和算法题目的同时,还可以用于辅助作为课程的作业提交系统,学生只要在其上注册,即可完成答题。教师每次课可以制定题目作为本次课的课下作业,课下学生通过网络提交作业代码,教师可以查看学生的做题状态,包括提交时间、提交次数和使用语言等信息,及时掌握学生的学习状态。

学生通过在线评测系统提交作业,可以对提交信息进行统計分析。例如,每题的提交次数和正确率等数据,通过统计分析学生的作业完成情况,及时掌握学生对题目及知识点的理解,进行适度的教学调整,为下次授课做好准备。

学生也可以查看到相关的信息,增加自己的成就感和压迫感。另外,在线评测系统还具备自动对提交的代码进行查重功能,一定程度上避免了作业抄袭的现象。

2.3 改革考核方法

考核作为教学效果的一个检验环节,对学习具有重要的导向作用[4]。以安徽理工大学数据结构课程的考核方式为例,课程由课堂理论教学、实验教学和课程设计三部分组成。學生最终成绩由分为平时成绩(20%)和期末闭卷考试(80%)组成,平时成绩由平时出勤(30%)、作业(10%)、课堂表现(10%)和实验成绩(50%)组成。这样的考核方式并没有反映出学生的实践能力。数据结构的考核应注重线性表、树和图,以及相关算法灵活应用及效率分析,而不是简答死记硬背。

课程的考核方法改革如下:考核分为理论考试和实践考核,理论考核由平时出勤、课堂表现和期末考试决定。课堂表现考核学生的课堂学习状态,包括对回答问题和团队讨论。期末考试主要考核学生对理论知识的理解和综合应用,侧重学生的分析问题能力。实验实训考核由上机实验(20%)、ACM-ICPC竞赛模式考核(40%)和课设实训验收考核(30%)组成,侧重学生应用知识解决问题能力的培养。这种实验实训考核方式综合反映学生平时实验状态,课下做题状态和课设实训综合状态,能比较全面反映出学生的实践能力水平。

3 结束语

基于ACM-ICPC竞赛模式的数据结构实践教学改革,在传统数据结构基础上,对课程实践教学环节进行了改革,将理论和实践结合更加紧密,实践教学的趣味性和综合性。通过改革,侧重培养学生的分析和解决问题能力,锻炼编程能力,引入排名机制,激发学生竞争意识和自主学习的意识。通过课程改革,改善了教学效果,提高了实践教学水平。

参考文献:

[1] What is ACM ICPC. http://acm.hit.edu.cn/about-acm-icpc/what-is-acm-icpc.

[2] 徐本柱,王浩,胡学钢. ACM/ICPC的教学与实践[J].合肥工业大学学报(社会科学版),2008(6):133-137.

[3] 陈湘骥,刘才兴,徐东风. ACM/ICPC与可持续发展的IT人才培养与方式实践[J]. 计算机教育,2009(10):6-9.

[4] 严权峰. 依托程序设计竞赛. 提升学生综合素质[J]. 电子技术, 2014(2):51-53.

【通联编辑:王力】


推荐访问:数据结构 教学改革 竞赛 实践 模式

猜你喜欢