APP下载

《数据结构与算法》教学的改进

2013-08-15

重庆与世界(教师发展版) 2013年9期
关键词:数据结构计算机专业题目

刘 丹

(长春理工大学计算机科学技术学院,长春 130022)

《数据结构与算法》是计算机科学与技术专业最重要的一门专业基础课,数据的组织结构以及对这些结构化数据操作的实现是这门学科所关心的核心问题。通过对《数据结构与算法》这门课程的学习,学生们能够理解各种数据对象的特点,增强逻辑思维和分析问题、解决问题的能力,进一步提高程序设计和软件开发的能力,同时也将为计算机专业后续课程打下坚实的基础。因此,数据结构课程在本专业学生的培养过程中具有举足轻重的作用[1-3]。

一、教学中出现的问题

《数据结构与算法》这门课程不仅仅是计算机专业基础课,也是部分非计算机专业的必修或选修课程,本门课程的开课主要目的是为培养学生们如何运用计算机解决实际问题,提供出坚实的理论基础。这门课程具有逻辑性较强、抽象性较高的特点,正是由于这些特点常常会造成学生难于理解、运用[4-5]。如何完成教学任务、达到教学目的、实现教学目标、提高教学质量,一直是一个严峻的问题!在实际教学过程中,时常会发现学生们感觉到这门课程枯燥、不容易掌握;学习起来较吃力,解决实际问题能力差;在从事软件开发时,灵活应用能力弱等问题。

(一)课程抽象,知识面广

在《数据结构与算法》这门计算机专业基础课程中,涉及到多种计算机程序设计中经常用到的线性表、栈、队列、串、数组、广义表、树、二叉树、图等数据结构,知识点多,运用灵活。在学习过程中,对于老师们的授课内容,多数学生不能及时有效地复习巩固,就势必会造成前面的知识还没有完全理解掌握、灵活运用实践,新的知识又接踵而至,造成问题堆积。在这样的情况下,经常会出现“听课不易,实践更难”的情况。

(二)编程能力基础薄弱

《数据结构与算法》是一门实践性很强的计算机专业基础课程,在这门课程中涉及的主要算法,都基本上要在先修课程的基础上理解完成。这也就要求学生应具备一定的编程能力基础,要求学生能够驾驭某种程序设计语言来实现课程中涉及到的算法。学生们具备一定的动手能力,对算法的理解是十分有帮助。只有通过实践过程,学生们才能更好理解和掌握所学的理论知识。在实验课上,经常会出现这样的情况,很多学生能够设计出实验题目所要求的算法,但是却无法用程序设计语言顺利表现出来;即使能编写出相应程序段,在编译调试阶段,往往也会错误百出,造成学生们失去信心、丧失学习乐趣。

(三)实验题目设计问题

由于《数据结构与算法》这门课程章节内容之间有着相互关联递进关系,所以在每章实验题目内容上同样的有着递进关系。前面章节的实验内容,如果学生们完成得不好,新的实验任务又布置下来,这样很容易造成旧的问题没解决,新的问题又来了,日积月累会造成学生“无从下手,不想下手”的局面。

(四)程序抄袭问题

在平时布置实验题目任务的时候,由于受到课程理论授课内容的限制,所以同一章节的实验题目内容对于每个学生都是相同的。这就为有些学生提供“方便条件”,使他们找到了完成实验任务的“捷径”,自己不用动脑思考问题、解决问题,而直接修改他人编写设计的程序,更有甚者则直接复制他人设计的程序。这样的做法,虽然学生们能“轻松”顺利地通过实验程序验收,得到相应的成绩,但是却无法真正使学生们提高解决实际问题的能力。

二、教学方法的改进

(一)清除盲点,巩固知识

针对学生们无法及时消化教师授课内容,无法将所学到的理论知识运用到解决实际问题当中去的情况,在阶段授课之后,增加阶段测试和知识回顾两个学习环节。阶段测试,主要目的是为了能够及时了解到学生们学习的“薄弱环节”,将学生们学习过程中遇到的问题显现出来,并对这些问题进行总结划分。针对总结得到的问题,再进行知识回顾。知识回顾不仅仅是简单的陈述,而是针对测验阶段反应的问题,有针对性地给学生们进行详细讲解。这样不仅能够扫清课堂授课中的“教学盲点”,还能帮助学生们及时复习巩固所学习过的理论知识,同时为提高学生们的实践动手能力,做好了准备工作,打下了坚实的基础。

(二)唤醒编程记忆,提高动手能力

针对学生们的编程能力普遍不强的情况,在本课程的理论课堂已开始而实验课堂还没有开始的时候,布置适量的选修实验题目。这些题目主要为了唤醒学生以往的编程记忆,提早进入状态,达到能够熟练掌握调试程序技巧的目的。在教学过程中,发现有部分学生没有计算机,这样势必会造成这些学生只能在上实验课时才能接触计算机,实践机会过少,难以实现理论知识应用化的过程。针对这样的情况,计算机实验室采取开放式管理,不仅使学生获得更多的实践机会,提高了个人的动手及解决实际问题的能力,而且还能使得教学资源利用率大大提高。

(三)打破“一课一题”的实验教学模式

为了避免发生程序抄袭的问题,任课教师在设计实验题目的时候,打破以往“一课一题”的传统模式,针对同一知识点,设计出多组实验题目;并且在程序检查的过程中,教师们改变以往的验收方式,不再像从前评定成绩的优劣主要以程序运行结果为依据,而更看重的是算法设计思路以及实现过程,并要求学生们在实验报告中清楚、准确地表现出来。这两种做法,有效地遏制了程序抄袭问题,使学生们逐渐养成了相互探讨问题、共同攻破难题的良好的学习风气。

在一定的阶段学习之后,任课教师会根据学生们的平时完成实验情况,统计学生们中多数人所集中体现出的问题,有针对性地、有目的地为大家讲解及演示,消除学生们心中疑惑;并针对这些问题,再拟定一些稍难的选做实验题目,供学生们巩固理论知识、加强动手能力。因为实验课的学时分配十分有限,所以任课教师不能再将后期布置的选做实验题目,再一一检查、讲解。但这并不意味着,学生们对于这些选做题目的完成情况就无从评价及验证,因为任课教师会在一定时间后将参考的程序设计方案提供给同学们。这样,会更加有利于培养学生们养成独立思考问题、独立解决问题的能力。

三、教学改革效果

通过以上一系列的教学改革,《数据结构与算法》这门课程的教学工作取得了较好的教学效果。学生们对数据结构中涉及的各种数据对象能够做到掌握、理解和运用,并且对实际问题的分析能力、解决能力以及实践能力都有很大的提高。另外,从课堂互动、课后同学之间或同老师之间的讨论中,都能感受到学生们对学习产生了浓厚的兴趣。在实验检查过程中,能够感觉到抄袭情况大大减少,基本上能够达到杜绝。90%左右的学生能够做到独立完成实验任务。在解决实际问题过程中,同学们更是能够有自己独立的解决思路,勇于创新。

[1]严蔚敏,吴伟民.数据结构:C语言版[M].北京:清华大学出版社,2007.

[2]周苏,柳俊,孟学多.“数据结构与算法”的教学改革和实验创新[J].计算机教育,2007(8S):78-80.

[3]彭波.数据结构与算法[M].北京:机械工业出版社,2008.

[4]徐孝凯.数据结构实用教程[M].北京:清华大学出版社,2007.

[5]马彦.数据结构实验教学改革探索[J].洛阳师范学院学报,2011(11):65-67.

猜你喜欢

数据结构计算机专业题目
“以赛促学,以赛促教”促进计算机专业教学理念创新与实践研究
唐朝“高考”的诗歌题目
关于题目的要求
本期练习类题目参考答案及提示
“翻转课堂”教学模式的探讨——以《数据结构》课程教学为例
高职高专数据结构教学改革探讨
职业高中计算机专业教学改革浅析
一道不等式题目的推广
TRIZ理论在“数据结构”多媒体教学中的应用
TRIZ理论在“数据结构”多媒体教学中的应用