基于ACM―ICPC模式的算法分析与设计课程的建设与实践.docVIP

  • 4
  • 0
  • 约4.65千字
  • 约 9页
  • 2018-08-18 发布于湖北
  • 举报

基于ACM―ICPC模式的算法分析与设计课程的建设与实践.doc

基于ACM―ICPC模式的算法分析与设计课程的建设与实践   摘 要:针对算法分析与设计课程的教学实际,文章分析了该课程教学模式的局限性和传统的实践教学中存在的问题,提出将ACM-ICPC竞赛模式引入该课程教学的观点,开发了一个基于ACM-ICPC模式的程序测评系统,并应用在算法分析与设计课程的实践教学中,取得了良好的教学效果。   关键词:ACM-ICPC;算法分析与设计;实践教学   中图分类号:G642 文献标志码:B 文章编号:1673-8454(2015)10-0065-03   一、引言   算法分析与设计是面向设计的计算机专业核心课程,主要通过对经典算法的学习和研究,使学生掌握算法的设计策略和算法复杂度的分析方法,培养学生分析和解决实际问题的能力,为开发高效的软件系统奠定了坚实的基础。该课程教学内容繁多,涉及的知识面很广,主要内容包括算法分析方法、递归算法、分治算法、贪心算法、动态规划、回溯算法、分支限界、近似算法、概率算法等经典的算法,覆盖了多项式、数论、矩阵、集合、图论、几何、模式匹配等数值和非数值计算问题。   目前,各高校该课程分配的课时普遍较少,教学方法也都是以讲解为主,即使设置了实验课,在实践环节通常也只是一味地对算法进行验证,很少考虑到算法的运行效率分析、测试数据的规模以及实际的应用场景。学生对算法的学习主要以理解和记忆为主,缺乏对知识的重构和对算法的灵活运用,遇到实际问题便无从下手。而且,在传统实践教学中,学生抄袭代码的情况严重,不能有效提高学生的实践能力,无法体现实践教学的真正作用。在这种教学模式下,学生缺乏对实际问题进行抽象和分析的能力,思维创新和实践能力难以得到有效提高。本文结合我校实际教学情况,将ACM-ICPC竞赛模式与算法分析与设计课程的建设相结合,达到了良好的教学效果。   二、课程现状   算法分析与设计课程的建设在我校起步较晚,我校从2010年开始招收计算机科学与技术专业本科学生,从2012年开始为计算机科学与技术专业学生开设算法分析与设计课程。第一届课程只有理论课,学生缺少实践机会。该课程的开设是面向计算机科学与技术专业大三的学生,学生在学习该课程之前,已经学习了C/C++程序设计、数据结构、Java程序设计、高等数学和离散数学等课程,但是由于学生欠缺良好的计算思维,逻辑分析能力相对不足,编程实践能力仍然比较弱,学生在学习该课程时倍感吃力。   目前,我校在算法分析与设计课程信息化建设方面有许多不足,主要体现在以下几点:   (1)课程之间的联系不够紧密   算法分析与设计课程与其他课程的关系是很密切的,如数据结构,它们之间相互作用,从而提高计算机专业学生的实践能力,为学院培养高素质的应用型人才。由于这些课程的前后都没有很好地衔接,课程之间的重点和难点没有对应上,所以学生在上算法分析与设计课程时需要重新复习之前所学的课程,从而增加了学生学习的工作量。   (2)教学资源不足   当前课程并没有信息化系统的支持。学生只能通过网络搜索所需的资源,获取教师的PPT也只能通过教师,教学资源没有实现整合和共享。   (3)编程竞赛平台不多   程序设计能力的提升需要学生多思考多编程,而这方面实践能力的获取最有效的方式就是竞赛活动。在参加或举办程序设计类竞赛方面,学生只参与了国内的“蓝桥杯”这一个程序设计类竞赛,学院内部并没有开展此类竞赛活动。   三、ACM-ICPC模式下的课程建设   1.ACM-ICPC在课程中的作用   ACM国际大学生程序设计竞赛(ACM-ICPC)是由美国计算机协会(ACM)主办的,是一项旨在展示大学生创新能力、团队精神和在压力下编写程序、分析和解决问题能力的年度竞赛。经过40多年的发展,ACM-ICPC已经发展成为最具影响力的大学生计算机竞赛。竞赛时间为5个小时,重点考察选手的算法和程序设计能力。选手通过网络提交程序,评委负责将结果(正确或出错的类型)通过网络尽快返回给选手。   将ACM-ICPC竞赛模式引入算法分析与设计的教学中,可以激发学生的主动学习积极性,鼓励学生勤思考、多实践,相对于传统的实践教学具有以下几方面的优势:   (1)在网上进行实践教学,没有时间和空间的局限性。教师可以在测评系统中对同一个实验项目布置多个难度各异的题目,学生可以根据自己的掌握情况,从易到难选择合适的时间完成训练题目。学生完成编程提交代码后可以立刻得到评测结果,这样可以激发学生的学习热情。教师也可以分析学生提交程序是否正确或错误,并进行针对性的讲解。   (2)对创造校园的学术交流氛围有良好的促进作用。学生在课余时间通过在网上提交自己编写的程序源代码,自主进行算法和程序的交流,有利于培养学生的学术修养,实现学生与教师、学生与学生

文档评论(0)

1亿VIP精品文档

相关文档