老哥学习网 - www.lg9.cn 2024年05月16日 06:21 星期四
当前位置 首页 >杂文文章 >

数据结构课程【以竞赛培养模式推动数据结构课程教学改革】

发布时间:2019-05-26 06:56:47 浏览数:

  【摘要】针对数据结构课程与程序设计竞赛所涉及知识密切相关的特点,将程序设计竞赛与数据结构课程教学改革相结合,对数据结构课程的教学进行了有益的探索,并在多年的课程教学中加以实践,取得了很好的效果。
  【关键词】教学改革;数据结构;程序设计竞赛
  1.引言
  数据结构是计算机学科的核心课程,也是实践性很强的专业基础课。数据结构课程主要讲述数据的描述与组织、数据处理的算法设计,数据结构对于提高学生的算法设计能力有着极为重要的作用。目前在数据结构课程的教学中,大多采用C语言作为描述语言,在实验时要求学生使用C语言编写程序来实现数据结构中的算法。在传统的教学中,数据结构课程的理论教学与实践教学结合不够紧密,实验教学效果不尽人意。
  大学生程序设计竞赛是近年来国内各大学越来越重视的学科竞赛,也是大学生能力竞赛活动中最有影响力的一项赛事,竞赛涉及学科知识面广,有助于培养学生自主学习能力、创新能力,也有利于团队精神的培养。数据结构课程与程序设计竞赛所涉及的知识密切相关,参加程序设计竞赛能使学生将数据结构课程所学知识充分应用于竞赛中,将理论转化为实践,用实践验证及加强理论知识。
  2.改革措施
  根据我校制订的应用型人才培养目标,通过对计算机专业的课程体系、教学目标、计算机专业能力培养进行深入研究我校从2010年开始对数据结构、C语言程序设计、算法分析与设计这三门课程进行教学改革,理论教学改变了以往三门课程分开授课的模式,而是将它们的知识进行整合,做到了前导课、后续课的有机衔接。考虑到大学生程序设计竞赛所涉及的很多知识与数据结构课程紧密相关,我们依托程序设计竞赛,将这数据结构课程的教学改革与程序设计竞赛紧密结合。具体措施主要有以下几个方面。
  2.1 合理组织教学内容
  教学内容的设计是教学改革的核心。我们以知识点为单元,并结合C程序设计、算法分析与设计课程来设计教学内容。在C语言程序设计中,我们适当穿插讲述了数据结构中的部分内容,如数据结构中的直接插入排序、冒泡排序、简单选择排序、顺序查找、折半查找放在将C语言程序设计中一个知识单元中。在数据结构课程教学中,穿插了算法分析与设计的有关知识,如在讲述哈夫曼树和图的最小生成树时,穿插讲述了贪心算法,在讲述图的最短路径时介绍了动态规划算法,在讲述搜索时介绍了回溯算法。
  2.2 精心设计训练题目
  程序设计竞赛题目有命题规范、背景描述有趣和输入输出明确等特点,我们将数据结构训练题目描述成程序设计竞赛题的形式。我们根据理论教学知识点,以应用为主线、以方法与能力培养为出发点,精心设计了近100道数据结构课程训练题目,每道题目均提供一定规模的测试数据,以测试程序的正确性与效率,并上传到在线评测系统中。这些训练题目可以分为基本型、设计型和创新型三类,基本型题目侧重于提高动手能力、训练编程感觉,设计型题目侧重算法设计、训练思维能力,创新型题目大多是从以往的各种程序设计竞赛题目中精心挑选出来的,着重培养学生的创新能力。将原有实验教学中以算法为主线的训练模式改为以问题为主线的训练模式,通过具体问题描述给出实验题目,创造了一种与现实应用紧密结合的环境,较好地训练了学生选择数据结构和设计算法的能力。
  2.3 重新编写实验指导书
  根据理论教学和实验教学要求,结合实验程序设计竞赛的知识点,我们重新编写了数据结构的实验指导书,实验指导书对教学内容中的重点和难点部分作了进一步解析和拓展。在评测系统中,针对每个实验的安排了难度不等的训练题目。通过这些训练题目,可使学生深刻理解数据结构在程序设计中的实际作用,也使学生体会到了算法设计思想的重要性。
  2.4 采用在线评测系统提交作业
  程序设计在线评测系统是一个程序设计练习和竞赛平台,可以提供大量的程序和算法设计题目。在线评测系统除了能用于程序设计竞赛外,还可以广泛用于辅助程序设计类课程的教学,为学生提供一个开放的、自主学习的实验环境。学生通过网络可以随时提交程序代码,并可在丰富的程序与算法设计题库中寻找适当的题目来训练选择适当的数据结构和设计算法的能力。学生通过我们开发的在线评测系统提交作业。评测系统可以实时评测学生提交的作业是否正确,对错误提交还提供相应的提示信息。教师通过分析学生提交的程序代码,可以及时掌握学生做题的数量、类型和教学中存在的问题。
  2.5 组织数据结构课程竞赛
  程序设计竞赛可以有效检验学生综合应用所学知识来分析和解决问题的能力。组织针对数据结构课程的程序设计竞赛,可以检验学生对课程的掌握情况,可以培养学生的创造力和团队合作精神,让学生亲身感受到了竞赛的氛围,激发他们的学习兴趣,也为我校集训队员的选拔奠定坚实的基础。
  2.6 改革课程考核方式
  课程考试对学生的学习具有明显的导向作用。以往平时成绩主要来源于课后作业与出勤,这样的考核方式很难考察学生的实践动手能力,导致大部分学生只注重理论知识,难以提高学生的创新能力和实践能力。我们认为数据课程的考核应着重考核学生选择适当的数据结构和设计算法的能力,而不是死记硬背一些基础知识。为此,我们对课程的考核进行了大胆改革,将在线评测系统中的评测结果作为学生平时成绩的主要依据,并提高了平时成绩在总评成绩中的比例。
  3.结语
  数据结构是计算机专业的核心课程。以竞赛模式推动的数据结构课程教学改革,将理论知识学习和实际应用有机结合起来,激发了学生自主研究性学习的兴趣,提高了学生的编程能力和思维能力,取得了很好的效果。
  参考文献
  [1]严蔚敏,吴伟民.数据结构(C语言版)[M].北京:清华大学出版社,1997.
  [2]吴永辉,王建德.数据结构编程练习[M].北京:机械工业学出版社,2012.
  [3]谭浩强.C程序设计(第2版)[M].北京:清华大学出版社,2005.
  [4]王晓东.计算机算法设计与分析(第2版)[M].北京:电子工业出版社,2004.
  基金项目:湖南省教学改革项目资助(湘教通[2011]315号NO:408,湘教通[2008]263号NO:218,湘教通[2012]401号NO:459),湖南人文科技学院教学改革研究项目(RKJGZ1018)资助。
  作者简介:
  袁辉勇(1967—),男,湖南人文科技学院计算机科学技术系副教授,研究方向:算法分析与设计,传感器网络。
  羊四清(1966—),男,教授,湖南人文科技学院计算机系主任,研究方向:传感器网络,机器学习。
  易叶青(1976—),男,副教授,湖南人文科技学院计算机系副主任,研究方向:传感器网络,机器学习。

推荐访问:数据结构 教学改革 竞赛 培养模式

相关文章:

Top