版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
《数据结构》课程教学改革与探索
摘要:本文对数据结构课程的性质进行论述,指出目前课程教学过程中存在目的性不明确、理论教学与实践脱节现象严重和教学方式陈旧等致使学生对学习本课程失去兴趣等问题。针对课程的特点,从整合教学内容、改革教学方法和强化实践环节等几方面提出对课程教学的改革与探索。
关键词:数据结构;教学改革;教学模式
一、课程的性质
《数据结构》作为计算机专业的一门专业基础课,其主要内容包括将现实世界转化为在计算机世界中的抽象的数据描述,数据在计算机中的组织以及不同数据类型的基本操作实现等,是相对比较难于理解和掌握的课程。它不仅要有计算机方面的高级语言、计算机基础和计算机组成原理等软硬件基础知识,还需要有一定的如离散数学等数学理论。
这门课程也是联系一般基础课和专业课的“桥梁”,它既是程序设计的入门课程,也是诸如操作系统、编译原理、计算机网络以及数据库原理等后续课程的重要的基础课程,它不仅是构筑这些课程体系与知识结构的核心课程之一,同时对奠定学生计算机专业的基础具有重要意义。
从多年对计算机专业的学生跟踪情况看,数据结构课程掌握的程度与学生对学习后续课程的积极性密切相关,甚至影响到对整个专业知识的掌握。
对毕业学生工作情况的跟踪调查看,工作中的程序设计能力也需要有数据结构的相关知识。一般来说,具有较好数据结构基础知识的学生,在工作过程中适应工作变动、开辟新的研究阵地的能力较强。
从而能较好地紧跟信息技术的高速发展。
从国内外研究生的培养看,数据结构对学生继续从事计算机专业的科学研究,夯实专业基础至关重要。历年来《数据结构》课程通常被指定为计算机专业硕士研究生入学考试的必考课程。
在《数据结构》课程的教学中,既有理论知识的传授,又有实践性教学环节的指导,同时还有理论如何在实际程序设计中应用。因此,《数据结构》是计算机专业及其相关专业学生学好本专业必须掌握的重要专业基础课。
二、课程教学现状
从目前的教学方法来看,《数据结构》总是被认为是一门深奥、抽象的课程,一门理论性很强而和实践相脱节的课程。课程学完后不能形成一个整体而完整的体系,而是内容上形成切割而相互孤立,学生为了考试而学习,而在程序设计的能力上不能得到提高。其主要原因有以下几点。
1.教学目的性不明确致使学生丧失学习积极性。
《数据结构》本来是在程序设计过程中总结而得到的数据组织和操作的经验,用于程序设计的指导工作。而目前的教学目的只是要求掌握数据结构的几种基本类型和基本操作。这似乎可以通过基本数据类型的掌握能够用于指导实际程序设计,这就使得教学过程注重理论而忽略《数据结构》的根本目的和意义,致使学生根本不清楚学习这门课程究竟有什么作用。由于学生不明确《数据结构》的作用,导致学生感觉课程内容抽象、算法复杂、实用性不强。
因此在学习时主要是为了应付考试,注重课本上的理论内容,而不去考虑在具体程序设计中如何去使用《数据结构》来设计和解决具体的问题。在课程设计中,学生的目的就是为完成编程去苦苦思索,而根本就想不到如何去进行数据的有效组织和实现数据的基本操作,这样就很难提出数据结构的问题。很难想象不带问题去学习一门课程,会有很高的学习积极性。
2.教学内容的不合理性致使理论和实践脱节。
《数据结构》本是一门实用性很强的课程,主要是培养学生在程序设计方面的逻辑思维能力。可从目前的教学内容来看,强调的是数据结构的各个模型内容,每个模型只是说明模型的结构和模型的计算机实现,在理论描述上力求做到尽善尽美,如线性结构,既讲述一般模型和一般基本运算,又具体讲述栈、队列、数组和字符串。从内容安排上,各个模型之间表现为相对独立的关系,使得学生在学习过程中不能将课程的内容联贯在一起而形成一个整体。
至于课程的实验环节,一般是对所讲述的内容的伪代码翻译成高级语言进行调试通过,或者是仿造例子来完成一个简单的问题。所以在具体应用上没有教会学生解决问题的思路、算法思想和数据结构的使用,在实验中只能停留在完成课本内容,而对实际问题则是无从下手。有的学生在课程设计后反映程序设计的思路混乱,不知道如何选择数据结构;而有的学生反映到课程设计时才知道数据结构课程的用处。这些都是教学脱离实际的最现实写照。
3.教学方式的陈旧致使师生之间缺乏交流和沟通。
计算机技术的发展日新月异,程序设计的思想也是在不断发展。从目前的状态看,程序设计方法已从面向过程的设计方法发展到面向对象的程序设计方法。可我们的大部分层次的数据结构教学方式还是停留在面向过程的设计思路上,所使用的教材也类似,教师按照课本沿用一贯的思维方法传授知识,学生被当成听众,不经意间学生就受到老师的思维模式的影响,这种教学思维严重落后技术发展的的现象也是影响学生学习兴趣的重要原因。教育手段单一,主要是老师讲,学生听的状态。学生接受的知识局限于教材和老师授课的内容,所有学生都被压制到同一认知水平上。出现能力强的学生不满足,而相对较弱的学生比较吃力的现象。这种单向的知识传输方式,影响了学生创造和分析问题的能力。
三、课程教学的改革和探索
针对上述问题以及根据《数据结构》课程的自身特点,可以做如下几方面的课程教学改革和探索,即:整合教学内容、改革教学方法和强化实践环节。
1.整合教学内容。为了增强“数据结构”教学的时代性。
一是力求教材版本新、质量高,以防止教材内容滞后,必要时可以参考国外原版教材。在教材内容编排上,应是以程序设计的基本原理引领数据结构的内容;在教材内容的描述上,应选择程序设计技术发展相对应的手段,如现阶段可选择面向对象的方法描述;近几年来通过对数据结构的双语教学,明显体会到国外原版教材更加强调数据结构的实用性,简单化了理论知识。二是及时把反映学科前沿动态的新成果反映在授课内容里,如数据结构的描述上尽量使用面向对象的方法,描述语言尽量选择目前较为流行的C++、JAVA等语言;三是教师在授课过程中,对教学内容进行整合,将形似分散的各种数据结构类型通过实例能够组成一个整体。以数据查找应用为例,待查找的数据可以是线性结构的形式组织存储,以此展开对线性结构内容讲述。为提高数据的查找效率,应对待查找的数据进行排序。
在各种排序方法中,有序数可以用二叉排序树结构的形式组织和存储,以此展开对二叉树、树、森林内容的讲授。类似的,实验的内容也应是配合授课内容,对同一项目能够逐步深入,从低效率的程序设计,随着数据结构内容的不断深入,不断完善程序。
体会采用不同的数据组织方式,带来不同的程序运行的效率。
2.改革教学方法。
在教学过程中始终贯彻以学生为主体,教师为主导的教学模式。一是采用实例式与研讨式教学相结合。可以从项目作为切入点提出项目,按组组织学生对项目展开讨论,在讨论的过程中发现问题,提出问题,老师参与学生的讨论并针对问题讲述解决问题所需要的数据结构的知识。这样既增加了师生之间的互动,也让学生由被动变主动地学习课程内容,调动了学生学习的主观能动性;同时,学生的分析问题、解决问题的思维能力也得到提高。二是传统的授课方式和现在的信息技术相结合。
其一是充分利用多媒体手段,利用动画技术,使讲授内容变得生动和具体,既弥补了单纯理论的抽象性,也节约了时间,增加了信息量。在多媒体课件中也让学生参与交互的演示以加深对相关内容的认识。
其二是充分利用网络资源,创建在线学习的课程教学网站,目前在我们的网站上除了与《数据结构》课程相关的课件内容外,更多的是可以让学生在网上展开对相关问题的讨论,学生也可以通过在线测试来验证自己对相关内容的掌握程度教师也能够利用网站和学生进行在线交互和对具体问题的指导。
三是课外指导与课内指导相结合。鼓励和组织学生参加各种软件设计、数学建模等活动并及时进行辅导。在课堂上对出现的问题进行细致的分析,让学生自觉体会到如何合理地组织数据和对数据结构的接口设计。实践证明,通过这些活动极大提高了学生主动学习的积极性,也体会到数据结构在解决具体现实问题上的实实在在的应用。
3.强化实践环节。
数据结构课程的目的就是为了提高学生程序设计的能力,实践环节是必不可少的。只有通过实践才能体会到数据结构对程序设计的影响。一是对每一部分的理论内容安排实验内容,一方面使学生能够加深对所学内容的理解和应用,另一方面也是通过实验让学生逐步提高程序设计的逻辑思维能力,摆脱的单纯的为了解决某个问题而编程的粗放方式。在选择实验内容时,也要考虑前后连贯性,如在栈结构的实验中,我们安排完成对操作对象为如整数、实数等简单数据类型进行加减乘除运算的简单计算器的实现。在做链式存储实验时,可以要求用链式结构存储多项式,扩展已有的计算器,使其也能够实现多项式的加减乘除运算。
同样的在排序实验中也可安排从简单排序算法到高级排序算法过程的完成,使学生充分体会算法有效性的概念。二是合理安排课程设计的内容。课程设计是对学习
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论