网站首页  词典首页

请输入您要查询的论文:

 

标题 如何提高应用型本科“数据结构”课程教学效果
范文

    廖国富

    摘? 要: “数据结构”是计算机类专业的核心课程,学好数据结构有利于抽象思维的锻炼和编程能力的提高。文章从“教”与“学”两个角度分析了当前应用型本科数据结构课程教学中的主要问题,结合应用型本科教学实际,提出了提高该课程教学效果的具体方法。

    关键词: 数据结构; 应用型本科; 教学效果; 方法

    中图分类号:G642? ? ? ? ? 文献标识码:A? ? ? 文章编号:1006-8228(2020)12-88-03

    Abstract: "Data Structure" is the core course of computer specialty. Learning data structure is beneficial to improve the abilities of abstract thinking and programming. This paper analyzes the main problems existing in the current teaching of "Data Structure" course for applied undergraduate from the angles of "teaching" and "learning", and combined with the practice of the applied undergraduate teaching, the specific methods to optimize the teaching effect of the course are put forward.

    Key words: data structure; applied undergraduate; teaching effect; method

    0 引言

    提高“数据结构”课程教学效果一直是计算机类专业教学的一个难点。对于应用型本科“数据结构”课程教学改革,钟美从教学内容、教学方法、教学手段和考核方式四个方面提出了教改措施[1]。殷晓玲等提出了因材施教,兼顾全面,形象教学与启发式教学相结合[2]。杨利英等提出了提升数据结构课堂教学效果的六种方法[3]。这些论文主要从学生基础、教学方法两方面分析问题,提出了对应的改进措施和方法。本文力求从“教”与“学”两个角度深入地分析该课程教学中存在的主要问题,系统地总结能提高该课程教学效果的方法。

    1 当前应用型本科“数据结构”课程教学中的主要问题

    当前应用型本科“数据结构”课程教学中存在的主要问题,首先是课程定位不准的问题,其次是前序课程的衔接问题,当然,关键还是授课方法的问题。

    1.1 课程定位不准,动力不足

    教:应用型本科计算机课程设置,重点放在实用技术上,如果一味地追求实用技术而忽略基础理论会使学生的后期发展受阻,很难达到较高的水平。因此,应用型本科可抛弃基础理论课程。个别应用型大学大幅度压缩“数据结构”总学时,这是短视行为;而有的学校又走向另一个极端,要求向双一流高校看齐,教材难度大,内容多,超出学生能力范围,人才培养方案和教学大纲不符合学生实际情况。在实际教学中,教师没能积极强调学习“数据结构”的重要性,缺少对学生兴趣的有效引导。

    学:以津桥学院为例,录取平均分数一般只超过二本线几分,也就是差一本线近百分,基础比较薄弱。这类学生大多学习主动性不强、自学能力和学习习惯欠佳。相当一部分学生因为认识不到“数据结构”的地位、作用,导致学习动力不足,态度不积极。很多学生是到应聘的时候,甚至是工作后才认识到“数据结构”的重要性,后悔當初不好好学习。

    1.2 前置课程基础不牢,课程衔接不好

    教:例如为了提高C语言的及格率,降低了C语言考核标准,如不考核指针等。这样就为“数据结构”课程教学留下了一个大隐患,C语言函数、结构体、指针等基础知识掌握不牢,到上“数据结构”课程时又必须花时间来恶补。

    学:编写程序、调试程序的能力偏弱、实践动手能力较差,大多数学生没有主动利用假期进行补差的意识和行动。学习吃力,易产生挫败感,畏难情绪比较重。

    1.3 教法呆板,效果不佳

    教:一是过度依赖PPT,照屏宣科,缺少黑板推演,学生易产生疲劳感,跟不上,提不起兴趣。满堂灌,讲授内容偏多、偏杂,拓展知识点偏难。最致命的是教学方法不灵活,“数据结构”本来理论性强,教学方法如果一成不变,容易导致课堂学生思维不活跃。如何把枯燥的理论变得有趣、生动,是教授“数据结构”必须解决的问题。二是师生比偏低,老师与学生面对面交流少,师生感情疏远,缺乏跟踪指导,课堂上学生有时候跟不上思路,难以消化,而课后学习疑问又得不到及时解决,这会让学生逐渐失去学习兴趣。三是上机实验效果不佳,解决实际问题的能力没有得到有效训练。

    学:学习自觉性差,主动预习、主动复习的少,课后作业抄袭成风,没有达到复习巩固的效果。很多学生随波逐流,等靠思想重。少数学生自暴自弃,厌学情绪重。学生普遍比较“独”、比较自我,同学间缺乏相互学习和交流。在学习上花的时间少,不用心,不用力,这样是学不好“数据结构”的。

    2 如何提高“数据结构”课程教学效果

    提高“数据结构”课程教学效果必须立足应用型本科教学实际。笔者认为,最重要的实际就是学生的实际情况,否则,任何方法都是无的放矢。立足实际,找准课程定位是提高课程教学效果的前提,无缝衔接是基础,灵活运用教学方法是关键。

    2.1 找准定位,明确目标

    教:制定符合学生实际情况的人才培养方案和教学大纲,兼顾实用技术和基础理论,要多参考同类学校而不是参考双一流建设高校、高职高专院校。“数据结构”是计算机类专业的核心课程,是为算法逻辑服务的[4],学好“数据结构”有利于抽象思维的锻炼和编程能力的提高。教师有责任让每一个学生真正认识到“数据结构”的重要性。每次课、每节课都要引导学生明确教学的目标、意义。在此基础上,针对应用型本科学生特点,以“线性表”、“树”、“图”、“查询”、“排序”为主线,设计好具体教学内容,突出重点。比如“排序”重点是直接插入排序、希尔排序、快速排序。

    学:通过“专业导论”课程学习,对专业的发展过程有了比较全面的了解、对自身的职业发展前景要充满信心,通过C语言的学习,培养了程序设计的兴趣。弄明白了学习数据结构的重要意义,才会主动面对学习困难,勤奋学习。

    2.2 无缝衔接,准备充分

    教:教好“C语言程序设计”,有意识的为“数据结构”课程作好准备。突出函数、结构体、指针等重点,加强程序设计和调试训练。对C语言考核成绩较差的学生利用假期补差提供一定的帮助和支持。

    学:必须解决掉畏难情绪。学好C语言要循序渐进,代码要多写、多读、多调试。要主动利用线上学习资源补差,课程资源推荐中国大学MOOC开设的C语言课程,技术论坛推荐CSDN论坛的“C语言”版块。

    2.3 教法灵活,实用有效

    找准了定位,做好了课程衔接,接下来最重要的就是“怎样教”了。教学方法的合理选择和灵活运用,必须要以教学目标为依据,以学生为出发点。针对应用型本科学生特点,因材施教,循循善诱,灵活的优化组合和综合运用。“数据结构”教学效果好不好,关键看学生是否“听得懂”、“会应用”。而有效的教学关键在于营造一个生动、活泼、民主、和谐的课堂氛围[5]。笔者总结了近几年的“数据结构”教学实践经验,除了逆向教学法、反刍教学法[6]以外,比较有效的教学方法还有问题导入法、演示法、讲授法和比较法。

    2.3.1 问题导入法

    通过讲解贴近学生生活的故事,创设问题情境,启发学生理解学习数据结构的好处,感受数据结构和算法的趣味性。数据结构课程里的每一种逻辑结构都有和现实世界相通的地方,如栈的概念和现实生活中的子弹夹、死胡同类似,队列和食堂、银行等地方的排队服务类似,树型结构可以和家族谱、学校、公司的组织图作比较,图状结构则可以应用于解决哥德斯堡七桥问题、最短路径、拓扑排序等问题[3]。

    2.3.2 演示法

    充分利用实物、动画演示算法的基本思想,让讲解更直观、更生动。比如,讲授直接插入排序和基数排序算法,可以先用扑克牌演示,或者用B站的动画演示,也可直接演示程序的运行结果,有助于学生理解问题本身,带着问题带着目标听课更专心。

    2.3.3 讲授法

    数据结构这门课程不仅是计算机类专业的重要基础课,实际上也是在软件开发过程中承上启下的课程,对培养学生的编程能力具有很重要的作用[7]。为了提高程序设计、分析能力,要少用PPT,因为PPT缺乏逻辑推导,学生不容易跟上老师的思路,容易走神。要擅于用黑板来推导算法思路和关键步骤,层次、逻辑更清晰。知识点讲授,要点、线、面结合,既有系统性,又抓基础和重点。突破难点,一个一个来,绝不贪多。要适度拓展,比如计数排序,既简单又易理解,学生如果领会到算法的妙处,就会增强学习的信心。

    2.3.4 比较法

    各种数据结构和算法本身具有很强的规律性、相似性和相关性。例如,对于几种主要的排序算法,在时间复杂度、空间复杂度、稳定性等方面进行比较,便于学生对几种排序算法的优缺点进行对比理解和记忆,在实际应用中才能根据具体情况做出最优的选择。对顺序表与链表、普里姆算法与克鲁斯卡尔算法、几种查找算法进行比较,都会收到很好的教学效果。

    2.3.5 其他方法

    教师要充分利用课堂时间建立良好的、和谐的师生关系,鼓励学生提问,辅导耐心、评价公正。通过微信公众号、QQ群指导学生学习和共享交流,拉近师生之间的距离。上机实验除了算法验证性实验,还要布置一定数量的实际应用题目。建立健全助教岗位制度。助教岗位承担课堂教辅、批改作业、辅导答疑、协助上机实践等教学辅助任务[8]。

    学生要主动融入课堂,培养协作精神,自觉预习,认真听讲、上机、作业,自觉复习,勤于总结,培养终身学习的意识和能力。

    3 结束语

    经过上述课程教学改革实践,学生的学习兴趣更浓,主动性更强,抽象思维和编程能力有明显的提高。近几年,越来越多的学校选用Java或者Python作为“数据结构”的描述语言,上述方法也有一定的借鉴作用。今后,还要进一步结合Java、Python语言自身特点来创新“数据结构”课程的教学方法。

    參考文献(References):

    [1] 钟美.以培养应用型人才为目标的数据结构教学改革[J].计算机教育,2014.14:26-29

    [2] 殷晓玲等.应用型本科院校“数据结构”课程教学研究[J].池州学院学报,2016.30(6):131-134

    [3] 杨利英,盛立杰.提升数据结构课堂教学效果的六种方法[J].计算机教育,2015.13:86-89

    [4] 李晓明.为什么会有“数据结构”?[J].计算机教育,2019.1:3-4

    [5] 胡守强.有效的教学关键在于课堂氛围[N].中国教育报,2019-11-04.

    [6] 张景祥等.专业基础课如何走出理论与实用的两难困境[J].计算机教育,2015.3:80-83

    [7] 刘志,赵明珠,刘端阳.面向编程能力培养的数据结构课程教学方法研究[J].计算机教育,2015.8:66-69

    [8] 教育部.教育部关于深化本科教育教学改革全面提高人才培养质量的意见[EB/OL].http://www.moe.gov.cn/srcsite/A08/s7056/201910/t20191011_402759.html,2019-10-08.

随便看

 

科学优质学术资源、百科知识分享平台,免费提供知识科普、生活经验分享、中外学术论文、各类范文、学术文献、教学资料、学术期刊、会议、报纸、杂志、工具书等各类资源检索、在线阅读和软件app下载服务。

 

Copyright © 2004-2023 puapp.net All Rights Reserved
更新时间:2025/2/10 17:41:38