“算法分析與设计”任务驱动教学模式改革与实践.doc

“算法分析與设计”任务驱动教学模式改革与实践.doc

  1. 1、本文档共10页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
“算法分析與设计”任务驱动教学模式改革与实践

“算法分析与设计”任务驱动教学模式改革与实践 摘要:本文分析了“算法分析与设计”课程教学中存在的问题,利用“任务驱动”教学方法,引入ACM/ICPC在线评测平台,结合教学实践,从任务设计、课堂教学和课程考核等方面探讨了一种注重过程和实践的教学模式。br  关键词:任务驱动;在线评测;代码雷同;教学改革br  中图分类号:G642文献标识码:Bbr   br  1引言br  br  “算法分析与设计”是一门面向设计的专业核心课程,是计算机科学研究的重要领域之一,也是现代软件系统的核心问题。课程旨在培养学生分析问题和解决问题的能力,掌握算法设计及复杂性分析方法。课程理论与实践并重,内容具有综合性、广泛性和系统性,是一门集应用性、创造性及实践性融为一体的综合性课程。目前,该课程的教学方法还是以讲解为主,通常只将已有的经典算法在数学模型和数据结构上片面地解释给学生;在实践环节只盲目地验证算法,而对该算法的运行效率、测试数据的规模以及实际应用场景则很少考虑。学生的学习则主要以理解和记忆的继承式学习为主,虽然记住了大量的算法理论,但没有“理解”和“消化”,不能灵活运用算法;在实践环节学生代码抄袭严重,很难达到训练的效果。在这种教学模式下,学生缺乏问题抽象能力,在遇到实际问题时无从下手,思维创新能力和实践能力难以得到有效的提高。br  针对以上问题,文献[1]从教学思想及教师角色的转变两个方面探讨了如何在课堂教学中训练学生的综合分析能力。文献[2~3]对教学内容的选择、以学生为中心教学方式的改变、实验与课程设计环节的加强、考核形式及评分标准的改革等方面做了探讨。笔者在长期的教学实践中,结合课程特点和实际教学,利用“任务驱动”教学方法,引入ACM/ICPC的在线评测系统,探讨了算法分析与设计的课程教学改革。br  “任务驱动”是一种建立在建构主义学习理论基础上的一种教学方法,是建构主义理论在教育教学中的具体应用。这种教学方法主张教师将教学内容隐含在一个或几个有代表性的任务中,以完成任务作为教学活动的中心;学生在完成任务的动机驱动下,通过分析和讨论任务涉及的知识及需要解决的问题;在老师的指导下,通过对知识的主动学习和应用,自主探索来完成任务。该教学方法的显著特点是以训练学生能力为主,教师的主要功能是“促进学生学习,引导学生成功”,是基于探究学习和协作学习的一种教学模式。br  br  2注重教学过程及考核的“任务驱动”教学模式实践br  br  2.1 “任务驱动”教学基本模式br  算法分析与设计的课程内容由一些具体问题构成(如排序问题、字符串处理问题、查找问题、图问题、组合问题、几何问题等),这些问题可看成是“任务驱动”教学法中的“任务”。在课程教学中,将具体的算法设计策略融入到这些“任务”中;课堂教学以任务为主,引导学生利用算法设计策略探索解决方案;在课后的实践环节,将结合实际应用且融入了知识点的任务放到ACM/ICPC在线评测系统上,让学生在课后根据任务描述,自主探索问题解决方案,并提交程序代码,在线评测系统根据任务设计时的测试数据来评价学生的解决方案;同时,为了避免学生抄袭代码,可以将学生代码导出后甄别代码雷同情况。br  整个教学过程以“任务”为中心,通过课堂教学和课后实践两个环节的任务驱动,让学生在自主探索的过程中掌握算法分析方法和常见的算法设计策略,并应用到实际问题中,训练学生实践能力,以达到教学目标。br  2.2面向应用的任务设计br  任务设计是“任务驱动”教学实施的第一步,也是该方法的核心,要求教师将教学内容和教学目标隐含到具体的任务中。课堂教学和实践环节的任务设计有着各自的侧重点。br  (1) 课堂教学中的任务设计br  课堂教学环节的任务设计重点是把教学内容和教学目标融入到任务中,让学生在教师的引导下逐步探索该任务的解决方法,以此掌握某一类算法设计策略。课堂教学是一个逐步推进的过程,因此,课堂教学中的任务可设计成多个有递进关系的小任务,由易到难,循序渐进地完成,激发学生的学习兴趣。br  例如,在讲到动态规划算法时,可根据动态规划求解的一般步骤来设计任务。动态规划是解决最优性问题一种重要算法设计策略,是通过寻找问题的递推关系来解决问题,教学的重点是让学生掌握寻找递推关系式的方法。递推关系表明了一些交叠子问题之间的关系,这些交叠的子问题可看成不同的阶段,递推关系式表明了阶段之间的关系。动态规划算法的求解步骤为划分阶段、找出阶段之间的递推关系及初始值、利用初始值求解递推关系式。因此,动态规划教学的任务设计按照求解步骤可分成多个由易到难的小任务,通过逐步解决这些任务来掌握动态规划算法的知识点。br  动态规划算法中求解有向图传递闭包的Warshall算法的任务可设

您可能关注的文档

文档评论(0)

fv45ffsjjI + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档