面向创新人才培养的数据结构教改探索

2018-06-21 08:24田丰来齐齐王亮
科教导刊 2018年1期
关键词:数据结构创新人才教学改革

田丰 来齐齐 王亮

摘 要 本文针对高等院校培养创新人才的过程中面临的困难和挑战,深入分析数据结构课程的教学中存在的现实问题,通过对学生学习状况的了解,以及课堂内外的交流沟通,提出了以培养学生动手能力为核心的教学方案,激发学生学习的主动性,引导学生进行研究性学习。

关键词 数据结构 创新人才 教学改革

中图分类号:G642 文獻标识码:A DOI:10.16400/j.cnki.kjdks.2018.01.023

Exploration of Data Structure Reform for Innovative Talents Cultivation

TIAN Feng, LAI Qiqi, WANG Liang

(School of Computer Science, Shaanxi Normal University, Xian, Shaanxi 710119)

Abstract In order to solve the challenges and difficulties in the cultivation of the innovative talents, this paper analyzes the problems in the teaching process of data structure curriculum in-depth. We comprehend the learning status of students and communicate with students in the classroom and after the class, then propose the teaching program to cultivate the coding ability of students. This program is also able to stimulate the students learning initiatives and guide them to do some research work.

Keywords data structure; innovative talents; educational reform

0 引言

数据结构课程是计算机科学与技术专业的一门专业基础课,也是程序设计的重要理论技术基础。通过该课程的教学,使学生学会分析研究计算机加工的数据结构的特性,从而能够根据所需解决问题的要求选择适当的逻辑结构、物理结构及其对应的算法,并能够初步掌握对算法的时间复杂度和空间复杂度进行分析的方法。与程序设计语言课程的差别在于,程序设计语言课程注重语法结构,需要学生掌握该语言的核心用法,对解决的具体问题不做深入分析,数据结构课程的学习过程则是复杂程序设计的训练过程,要求学生编写的程序结构清楚,易于理解,并符合软件工程的规范,重点培养学生的数据抽象能力。本文从对数据结构课程教学现状的分析出发,以提高学生的实践创新能为重点,对数据结构课程的教学改革模式进行探索分析。[1][2]

1 数据结构课程教学现状分析

数据结构是用程序解决实际问题的方法论,在实际的教学实践中,也是一门既难教又难学的课程,目前,在大部分院校中,都是以课堂讲授的方式对各种结构的逻辑存储、物理存储、以及基于此的相关算法进行介绍,再辅助少量的编程实践,通过短短一个学期的学习,大部分同学仅仅对数据结构有一个大致的了解,能够简单分析不同结构的特点,但是对如何将学到的数据抽象能力应用到实际生活中,解决具体的问题,设计相应的物理结构、处理算法,则还存在较大的差距。根据对数据结构课程教学的分析调研,目前,该课程的教学存在的问题包括以下几点。

(1)学生缺乏扎实的编程功底。程序设计语言是计算机专业学生的初始课程,但是由于大部分学生在入学时并没有程序设计的基础,仅通过短短一个学期的学习,很难掌握程序设计的精髓,大部分学生对于程序设计语言的学习仅仅停留在了对于概念的背诵和代码的记忆上,并没有深入理解程序设计的核心内容,缺乏计算思维的训练。加之函数、指针、结构体、联合体等概念,以及循环、分支等程序结构较难入门,学生很难迅速转换到大学的学习模式,并且由于课时不足,学生很难和授课教师建立顺畅的沟通,导致很多学生仅仅知道什么是程序设计,但却缺乏编程实现的基本能力,进而使得学生在学习更高级的数据结构课程时难度更大。

(2)教学过程缺乏沟通反馈。在进行数据结构课程的讲授时,教师由于课时和知识点的冲突,往往将大量的时间放在了基本概念等理论知识的讲解上,而对于更加重要的动手能力的培养,则放在了相对次要的位置,由于学生无法在课堂消化数量众多的知识点,导致在实际编程上机时,存在无从下手的情况,并且理论讲授和实践过程脱离后,学生会产生挫败感,更难在课堂上进入学习状态,进而进一步影响到编程上机,形成恶性循环,导致教学过程的效果较差。

(3)学生学习动力不足。由于数据结构课程偏基础,着重方法和思维能力的训练,而学生感兴趣的课程则偏向于实际应用,由于课时安排和知识点分布不合理,导致学生很难进入到高效的学习状态中,课堂上无法跟上讲授的内容,编程上机时更是难以熟练运用。加之基于传统的课程评价体系,该课程在进行测试评价时,通常采用平时成绩和考试成绩综合的方式,且平时成绩仅考虑学生的到课情况,并不能真实反应学生的课堂表现或者编程实践效果,而期末考试则主要以笔试答题的模式,无法准确评测学生掌握知识的水平,且笔试模式使得学生只重视对于知识点、概念的记忆,而忽略了对知识的灵活运用能力,这与创新人才培养的目标是背道而驰的。改变课程的考核机制也是我们在进行教学改革探索中的重要一环。

2 数据结构课程教学改革探索

2.1 数据结构课程教学内容选择

数据结构课程涉及了大量的知识点,包括线性表、栈、队列、数组和广义表、树、图、查找和排序等重点内容。通常授课课时为72学时,如何在有限的课时安排内高效传授数据结构课程的精髓,训练学生的创新能力,培养他们的计算思維,值得深入探索。传统的教学模式通常会覆盖除了外部排序、存储管理的所有知识点,由此带来的问题是,很难将其中任何一个知识点或者算法思想讲深讲透,只能浅尝辄止,学生也难以产生学习的兴趣,疲于应付对知识点的覆盖,产生厌烦情绪(见图1)。[3][4]

因此,针对该问题,可以考虑选择数据结构课程中有代表性的内容进行深入剖析,将一类问题用一个实例讲透彻,比全而不精的效果要好,学生也容易加深概念的理解,产生学习的兴趣,并能够自己动手进行实现。例如,对于线性表结构,我们可以尝试不直接从概念、逻辑结构、物理结构、算法这样的讲授流程开始,而是从多项式的计算问题开始,先讨论如何解决多项式的存储问题,由此便可以引入线性表的动态和静态存储方式,让学生自己发现动态和静态存储方式的优缺点,并能够根据实际应用的需要选择合适的存储结构,进而设计针对该结构的数据处理算法,实现对多项式的运算。在数据结构课程中,还有很多经典的案例,例如迷宫求解、表达式计算、最短路径生成等,通过问题导向的方式,以有趣问题出发,引出解决该问题所需要涉及的概念、方法、技术,进而实现数据抽象、算法设计分析、编码实现运行,由此将繁杂的知识点进行提取,将学生和教师从全覆盖的模式中解放出来,集中精力吃透核心思想,培养动手能力和计算思维,由此才能实现创新能力的培养。

2.2 数据结构课程实验内容的革新

在数据结构课程的教学过程中,还会配备一定课时的上机内容,通常是4个课时的课堂内容搭配2个课时的上机编程。但是在实际的上机的过程中,由于教学内容覆盖较广,对本章节的精髓核心并没有讲深讲透,并且在课堂也缺乏对于编程实践的指导,上机内容多局限于数据结构课程内容的简单复制,且由于学生的编程基础不足,出现无法实现基本算法的情况。[5]针对该现状,需要在可能内容更新的基础上,对实验内容进行同步革新。改变传统的教师布置上机作业,学生上机完成简单作业的模式,而是要用软件工程的模式对学生的编程开发进行管理,进而避免学生互相复制抄袭的问题。

在具体的实验安排上,打破传统的根据上机课时确定实验内容的做法,把实验任务从项目的角度进行分解,拆分成多个子系统,让学生自由组合,构成项目组,每个同学进行明确的任务分工,每次实验上机,每个组的同学分别完成不同模块的开发调试工作,直至到最后整个项目系统的整合完成。这样的实验内容符合现代软件工程的开发理念,在实验过程中进行的项目需求分析、概要设计、详细设计、编码实现、集成、测试、发布等工作,能够对学生的个人分析能力、动手能力、团队协作能力进行全方位的锻炼,并且这个过程需要各个团队学生自己独立开发,由此避免了复制抄袭的问题,通过对学生在项目开发过程中所承担任务大小进行成绩评定,可以有效激发学生的实验积极性,将被动的编码应付变成主动的学习提高,把对学生创新能力的培养落到实处。

3 结语

数据结构课程是奠定计算机类学生编程基本功的重要课程。目前社会对创新性人才的需求使得数据结构课程的教改刻不容缓,通过对课程的教学内容、教学方式、以及实验过程进行革新,能够有效提高该课程的教学效果,提升学生的编程开发能力,并培养学生的计算思维和创新能力。在今后的工作中,我们将根据实际教学的情况,进一步完善数据结构课程教学的改革措施。

基金项目:陕西师范大学2017年度校级全英语教学示范课程项目“智能计算”课程

参考文献

[1] 刘晓静,王晓英,张玉安,黄建强,刘志强.以创新人才培养为目标的数据结构实验教学改革[J].实验技术与管理,2014.31(11):184-187.

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

[3] 耿淼,包莹莹.数据结构课程初步教改的探讨[J].电脑与信息技术,2017.25(1):72-74.

[4] 李婷,许鸿儒.《数据结构与算法》的教改问题研究[J].教育教学论坛,2017(23):128-129.

[5] 孟凡荣,张斌,杨雷.数据结构实践课程的研究性学习及创新实践能力的教改探索[J].教育教学论坛,2014(49):135-137.

猜你喜欢
数据结构创新人才教学改革
数据结构线上线下混合教学模式探讨
重典型应用,明结构关系
高校全员育人的三级管理体系新探
电子信息类大学生创新人才培养体系建设研究
基于人才培养的技工学校德育实效性研究
当代大学生创新意识培养的研究
创新人才培养理论研究现状及未来研究方向
现代信息技术在高职数学教学改革中的应用研究
以职业技能竞赛为导向的高职单片机实践教学改革研究
微课时代高等数学教学改革的实践与探索