标题 | 《数据结构与算法》实践教学现存的问题及应对策略 |
范文 | 周玲芳 米成全 李政峰 关键词:《数据结构与算法》是一门训练学生思维、培养学生程序设计技能的课程,对学生理论转化实践的能力要求很高,因此这门课程的实践教学尤为重要。但该课程实践教学普遍在课程安排、网络资源利用以及实训内容设置方面存在问题。本文针对现存问题提出应对策略,并用以实际教学,通过教学结果验证策略的可行性以及在提升教学质量方面的成效。 关键词:数据结构;实践教学;教学质量 中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2019)30-0106-02 在信息时代迅速发展、人才竞争日益激烈的当代,实践和创新能力变得尤为重要,传统的教育模式需要不断改革和创新,才能培养出更具竞争力的实践人才。 大类招生背景下,《数据结构与算法》成为高校计算机及信息类等相关专业开设的一门必选专业课程。这门课程集理论和实践为一体,对学生分析、解决问题能力要求较高,对上课老师在教学方法和实训内容设计方面也提出更高的要求。 1课程概述 如果说各类编程语言是开发工程师的招式,那么数据结构与算法就是其内功。作为计算机及信息类专业的核心课程,《数据结构与算法》涉及程序设计、计算机软硬件、数据库管理、编译原理、人工智能、操作系统、图像处理等众多领域。在学科体系中其重要性如图1: 2实践教学存在的问题 笔者在该课程实践教学过程以及和其他高校同课程老师交流过程中,发现实践教学方面普遍存在以下问题: 1)实践训练不足 《数据结构与算法》是一门要将理论融会贯通,用以在实训中解决具体问题的课程,学习难度较高。且学生普遍编程经验少,很难跨出从理论到实践的第一步,这需要足够多的实践训练来积累。 2)课程安排不合理 《数据结构与算法》的前置课程包括最主要的c语言,还有必备的数学基础,如高等数学、离散数学和线性代数。高校部分专业没有开设离散数学课程,而且不同专业C语言的教学要求和范围不一致,比如c语言中指针没有列入教学范围或者没有重点讲解,导致在数据结构中无法理解链式存储结构的各种指针操作。另外,有的专业课程安排中存在C语言和高数、线性代数并行或者线性代数排在C语言之后的现象,这样都会使得学生C语言基础薄弱,从而在进一步学习本课程时障碍重重。 3)严重的抄袭问题 由于实训题目大多来源于教材的典型案例,学生很容易在网上搜索到相关源码,加上畏难心态,部分学生直接照搬网上源码或者复制同学代码来应付老师。 4)学习兴趣不足 由于数据结构是一门比较抽象、难理解的课程,编程基础薄弱或者思维转换不过来的学生会感到学习困难大,学习效率不高,慢慢就丧失了学习兴趣。 3应对策略 针对实践教学过程中现存的问题,笔者提出以下应对策略。 1)针对实训课时问题,笔者建议实践和理论课时之比至少1:1,同时,理论课时和实践课时应该交叉排课,这样刚学的理论知识能及时在实践过程中得以巩固。另外,设计难度系数偏低又不乏趣味性的课外实训任务,并以此作为平时成绩的重要依据,这样能丰富实训内容和激发学习兴趣。 2)针对课程安排问题,笔者建议前置课程尽量排在大二下学期之前;《c语言》的教学范围应同时兼顾《数据结构与算法》的课程要求;《数据结构与算法》应该紧接c语言排课,“趁热打铁”的方式让学生知识结构更连贯,老师也不用多花时间去给学生复习基础知识。 3)针对抄袭问题,笔者建议一方面要从认识上纠正,让学生意识到抄袭是不对的,是自欺欺人的行为。要让学生懂得想要学到知识,必然要付出相应的努力。另一方面,从出题上断了学生抄袭的后路。在设计实践案例的时候,结合专业特色和学生特点对典型案例的输人、输出、数据、实现形式、实现方法或实验要求等方面进行个性化定制。这样,就算学生从网上找到的相关代码,或者拿到同学已经运行成功的代码,也要结合自己题目的个性化要求进行修改、调试才能运行出结果。 4)“兴趣”是最好的导师,兴趣不足就得培养。主要从以下几个方面着手: 实践任务设置要从易到难,循序渐进,避免一开始就吓退学生,设计引导性强的课外实训题目巩固基础; 实践题材结合学生的关注热点和兴趣点,引导学生从自身出发来思考问题; 在实训过程中,允许“室友互帮”“老乡互帮”操作,鼓励学生互相讨论和帮助; 设置团队任务,引导学生团队合作和良性竞争。 5)另外,为了应对“大数据时代”对人才的需求,《数据结构与算法》在教学过程中也应顺应前沿领域的发展,在线性表、哈希表、二叉树及图等知识的学习中进行拓展,设计基于大数据的应用案例作为综合实验课题,加强学生创新能力和综合实践能力的培养。 4教学效果分析 这一学期在16级通信工程专业三、四班进行了试点教学,并和平行班级进行对比分析。选取顺序表的基本操作及应用、单链表的基本操作及应用、栈的基本操作及应用、队列的基本操作及应用、串的基本操作及应用、查找、排序七次实验作为考察点。最后统计试点班级和参照班级在七次实验课程的表现及得分,结果图2: 通过数据对比发现在传统实践教学条件下,参考班级的成绩都相对偏低,试点班级的实验得分整体比参考班级平均提高8.25分,这说明改进的实践教学取得了更好的教学效果。 另一方面,通过课后调查发现,一学期下来,参考班级和试点班级的学生在学习兴趣和课外学习方面也存在较大差异。图3为学习兴趣、课后提问以及课外延伸学习三方面的调查结果。 数据表明试点班级的学生编程和算法设计兴趣明显提升,课外主动扩展学习和主动联系老师调试代码的学生人数居多,整体的学习氛围更好。这也说明有效的实践教学课堂在引导学习兴趣、形成主动学习意识等方面有良好的效果。 5结束语 如何让学生在激烈的人才竞爭中获取优势是作为老师应该考虑的问题,论文总结归纳《数据结构与算法》课程实践教学方面现存的种种问题,并就如何解决这些问题进行初步探索,也在实际教学中取得了初步成效。论文尝试回答本课程在实践人才培养方面如何教、教什么以及如何改的问题,这是一个大的课题,需要和更多相关课程的老师一起探讨、深人研究。 |
随便看 |
|
科学优质学术资源、百科知识分享平台,免费提供知识科普、生活经验分享、中外学术论文、各类范文、学术文献、教学资料、学术期刊、会议、报纸、杂志、工具书等各类资源检索、在线阅读和软件app下载服务。