论文部分内容阅读
摘要:本文介绍了数据结构在计算机专业课中的重要地位,根据应用技术型大学的主要任务,总结了数据结构课程在以往教学过程中存在的问题,提出了改进的办法,并在教学实践中取得了较好的效果。
关键词:应用技术型大学 数据结构 教学方法改进
一、以往教学中存在的主要问题
1、前导课程不扎实
目前大多数高校选择c语言作为数据结构的前导课程。学生对c语言的掌握和熟练程度,直接关系到数据结构课程的教学效果。同时,c语言也是计算机专业新生学习的第一门程序设计课。对于初入大学的新生来说,一方面他们还没有完全转变高中时代的思维模式、适应大学的学习方法,另一方面由于c语言本身具有相当的复杂性,使得c语言对他们来说,也是一门学习难度大,不易掌握的课程。
2、实践环节重视程度不够、缺少反馈机制
数据结构的教学主要包括线性表、栈和队列、树、图、排序和查找这5大知识模块,在使学生理解各类数据结构的逻辑结构的基础上,还涉及到顺序存储结构、链式存储结构及其上的各种相关操作的实现。理论教学任务量大且内容抽象,原有培养方案没有配置足够的实践课时,一方面教师无法给予每个学生足够的指导,影响学生动手能力的培养,学生难以真正理解课堂上的知识点。另一方面教师无法及时对学生提交的作业给出反馈,最终导致学生学习兴趣下降、教学效果不理想。
3、考核方式单一
数据结构课程的考核方式大多为期末笔试加平时成绩,平时成绩则以上课出勤、课后作业及实验报告组成。由于不少学生在学习方法上存在问题,遇到困难时采取抄袭的方式,而不是通过思考来解决问题。因此,传统的考核方式的单一性、不公平性也影响了课程教学效果,导致学生学习动力下滑。
二、当前课程教学改进
要使学生学好数据结构,首要解决的问题应是:“数据结构有什么用”。只有这个问题得到解决,学生才有学习的动力和兴趣。因此,在课程教学中要始终贯穿一个主线:“有什么用”以及“怎么用”。运用灵活的教学方式,精心组织教学内容,特别加强实践教学,引导学生从被动接受转变为主动学习。
1、巩固前导课程,探索一体化教学新模式
针对学生c语言基础差的问题,可以在数据结构开课初期,利用实验课进行c程序设计专题复习,巩固数据结构算法中常用到的例如:数组、函数、指针、结构体这些知识点。教学实践证明这种有针对性的专题复习对学生后续的学习帮助很大,例如学生理解了为什么用typedef关键字,为什么要用结构体,它和数组有什么不同,引入结构体数组能解决什么样的问题,动态分配内存的malloc函数是怎么运作的,有了这些基础知识,学生在阅读代码时变得轻松了很多,对算法的理解和应用能力也随之提高。
2、改进教学方法和教学手段,突出实用性
数据结构这门课程主要介绍线性结构、树形结构和图形结构这三大基本结构的逻辑结构、存储结构和基本操作,这些理论知识涉及的概念、算法比较多,自成体系并且很抽象。学生如果不理解这些概念则很难记住,更谈不上应用,很快失去学习信心。因此,上好第一节课非常关键。通过引用和学生生活联系紧密的、有趣的问题,阐明数据结构研究的对象,激发学生的学习热情。
3、变“宣讲课”为“互动课”,增强主动性,强调协作性
许多学生对于理论性强的内容会很快失去学习兴趣。教师如果不注意学生的反应,只在讲台上进行“宣讲”,学生既没有学会知识,又浪费了宝贵的课堂教学时间。为了使学生能够保持学习注意力,需要增加课堂互动环节,让学生参与到课堂教学中来,可以采用例如教师提出问题,引导学生分析问题,让学生解决问题,最后由教师总结。又例如,由教师布置任务,学生单独或组成小组完成任务,再由教师评价效果,激励式教学。
4、增加口试环节,增强灵活性
专业课口试,是国外很多大学最常使用的考试方法之一。口试不但可以检验学生最真实的学习效果,同时也锻炼了学生应变能力和口头表达能力,对学生将来升学和就业面试是一个很好的锻炼。口试的时间一般在10至30分钟,采取一对一或一对多的方式进行,但一组最多不超过5人。口试时,由教师随机提出问题,指定学生回答,或由学生自由回答,教师进行记录。对有分歧的答案,教师请学生进行辩论和说服,最后由教师进行评价。
5、运用多媒体手段,增强生动性
制作精良的课件可以生动、形象、灵活的呈现算法执行的过程和数据结构的动态变化。例如:链表的插入、删除过程,二叉树的构造过程,图的最短路径等,可以通过动画将每一步的变化表示出来,并且配合上与这个变化相对应的关键c语句操作。通过视觉的刺激进一步增强学生对概念的理解,将抽象的内容具体化,让学生明白每一个操作可以用怎样的c语句来实现,而不是一段枯燥的、静态的代码。除了电子课件,教师还应指导学生使用网络资源,扩充知识面,深化知识点,跟踪学科发展前沿。
三、结束语
本文根据应用技术型大学对计算机专业人才培养的要求,提出了数据结构教学改进的具体方案,并且在实际教学加以应用,实践证明该方案显著提高了教学效果。在今后的教学工作中,还将不断进行探索,进一步提高教师的教学水平,使学生掌握软件设计领域的思维方式,形成良好的程序设计习惯和扎实的软件开发基础。
关键词:应用技术型大学 数据结构 教学方法改进
一、以往教学中存在的主要问题
1、前导课程不扎实
目前大多数高校选择c语言作为数据结构的前导课程。学生对c语言的掌握和熟练程度,直接关系到数据结构课程的教学效果。同时,c语言也是计算机专业新生学习的第一门程序设计课。对于初入大学的新生来说,一方面他们还没有完全转变高中时代的思维模式、适应大学的学习方法,另一方面由于c语言本身具有相当的复杂性,使得c语言对他们来说,也是一门学习难度大,不易掌握的课程。
2、实践环节重视程度不够、缺少反馈机制
数据结构的教学主要包括线性表、栈和队列、树、图、排序和查找这5大知识模块,在使学生理解各类数据结构的逻辑结构的基础上,还涉及到顺序存储结构、链式存储结构及其上的各种相关操作的实现。理论教学任务量大且内容抽象,原有培养方案没有配置足够的实践课时,一方面教师无法给予每个学生足够的指导,影响学生动手能力的培养,学生难以真正理解课堂上的知识点。另一方面教师无法及时对学生提交的作业给出反馈,最终导致学生学习兴趣下降、教学效果不理想。
3、考核方式单一
数据结构课程的考核方式大多为期末笔试加平时成绩,平时成绩则以上课出勤、课后作业及实验报告组成。由于不少学生在学习方法上存在问题,遇到困难时采取抄袭的方式,而不是通过思考来解决问题。因此,传统的考核方式的单一性、不公平性也影响了课程教学效果,导致学生学习动力下滑。
二、当前课程教学改进
要使学生学好数据结构,首要解决的问题应是:“数据结构有什么用”。只有这个问题得到解决,学生才有学习的动力和兴趣。因此,在课程教学中要始终贯穿一个主线:“有什么用”以及“怎么用”。运用灵活的教学方式,精心组织教学内容,特别加强实践教学,引导学生从被动接受转变为主动学习。
1、巩固前导课程,探索一体化教学新模式
针对学生c语言基础差的问题,可以在数据结构开课初期,利用实验课进行c程序设计专题复习,巩固数据结构算法中常用到的例如:数组、函数、指针、结构体这些知识点。教学实践证明这种有针对性的专题复习对学生后续的学习帮助很大,例如学生理解了为什么用typedef关键字,为什么要用结构体,它和数组有什么不同,引入结构体数组能解决什么样的问题,动态分配内存的malloc函数是怎么运作的,有了这些基础知识,学生在阅读代码时变得轻松了很多,对算法的理解和应用能力也随之提高。
2、改进教学方法和教学手段,突出实用性
数据结构这门课程主要介绍线性结构、树形结构和图形结构这三大基本结构的逻辑结构、存储结构和基本操作,这些理论知识涉及的概念、算法比较多,自成体系并且很抽象。学生如果不理解这些概念则很难记住,更谈不上应用,很快失去学习信心。因此,上好第一节课非常关键。通过引用和学生生活联系紧密的、有趣的问题,阐明数据结构研究的对象,激发学生的学习热情。
3、变“宣讲课”为“互动课”,增强主动性,强调协作性
许多学生对于理论性强的内容会很快失去学习兴趣。教师如果不注意学生的反应,只在讲台上进行“宣讲”,学生既没有学会知识,又浪费了宝贵的课堂教学时间。为了使学生能够保持学习注意力,需要增加课堂互动环节,让学生参与到课堂教学中来,可以采用例如教师提出问题,引导学生分析问题,让学生解决问题,最后由教师总结。又例如,由教师布置任务,学生单独或组成小组完成任务,再由教师评价效果,激励式教学。
4、增加口试环节,增强灵活性
专业课口试,是国外很多大学最常使用的考试方法之一。口试不但可以检验学生最真实的学习效果,同时也锻炼了学生应变能力和口头表达能力,对学生将来升学和就业面试是一个很好的锻炼。口试的时间一般在10至30分钟,采取一对一或一对多的方式进行,但一组最多不超过5人。口试时,由教师随机提出问题,指定学生回答,或由学生自由回答,教师进行记录。对有分歧的答案,教师请学生进行辩论和说服,最后由教师进行评价。
5、运用多媒体手段,增强生动性
制作精良的课件可以生动、形象、灵活的呈现算法执行的过程和数据结构的动态变化。例如:链表的插入、删除过程,二叉树的构造过程,图的最短路径等,可以通过动画将每一步的变化表示出来,并且配合上与这个变化相对应的关键c语句操作。通过视觉的刺激进一步增强学生对概念的理解,将抽象的内容具体化,让学生明白每一个操作可以用怎样的c语句来实现,而不是一段枯燥的、静态的代码。除了电子课件,教师还应指导学生使用网络资源,扩充知识面,深化知识点,跟踪学科发展前沿。
三、结束语
本文根据应用技术型大学对计算机专业人才培养的要求,提出了数据结构教学改进的具体方案,并且在实际教学加以应用,实践证明该方案显著提高了教学效果。在今后的教学工作中,还将不断进行探索,进一步提高教师的教学水平,使学生掌握软件设计领域的思维方式,形成良好的程序设计习惯和扎实的软件开发基础。