APP下载

计算思维在《数据结构》中应用思考

2020-07-14熊光耀何艳秋

理论与创新 2020年9期
关键词:数据结构计算思维教学改革

熊光耀 何艳秋

【摘  要】进入21世纪,在互联网的推动下,各项技术取得了突破,大数据、云计算、物联网、区块链等信息技术也越来越为人们所重视,因此,在教育特别是高等教育中也加大了对学生的信息素养的培养,而要提高信息素养,就必须培养学生的计算思维能力,很多学校也开设了数据结构这门课程来培养学生的计算思维能力,良好的计算思维对解决各方面问题会产生积极的影响。

【关键词】 计算思维;数据结构;教学改革

1.计算思维的定义

计算思维是运用计算机科学的基础概念进行问题求解、系统设计以及人类行为理解等涵盖计算机科学之广度的一系列思维活动,由周以真于2006年3月首次提出,并被其进一步定义为通过约简、嵌入、转化和仿真等方法,把一个看来困难的问题阐释成一个我们知道问题怎样解决的方法;是一种递归思维,是一种并行处理,是一种把代码译成数据又能把数据译成代码,是一种多维分析推广的类型检查方法,是基于关注分离的方法;是一种选用一种合适的方式去陈述一个问题或对一个问题的相关方面建模使其易于处理的思维方法;是种用海量数据加快计算,在时间和空间之间,在处理能力和存储容量之间进行的折衷的思维方法。

2.数据结构课程的现状

数据结构是计算机专业的一门重要的基础课,也是世界各國计算机专业必修的核心课程之一。数据是计算机处理的对象,人们使用计算机处理问题就是对数据进行加工处理的过程,因而数据的组织与结构被确立为计算机科学中最基本的内容。《数据结构》作为一门独立的课程在国外是从1968年才开始设立的,多年来,学生普遍反映课程学习难度大。分析其原因,主要有以下几个方面:①该课程作为一门基础课,一般开设在低年级,此时的学生还不具备专业知识系统学习的背景,而且该课程知识点繁多,学生要测试、验证需要编写大量相关代码,这就要求学生要熟练掌握C、PASCAL的先导课程,否则学生会产生畏难情绪,从而丧失学习兴趣和信心;②以“教师为中心”的传统课堂存在“满堂灌”、“一言堂”的现象,学生无法发挥主动性,只能机械记忆,理解课堂的知识,实验课也只能做一些验证性实验,这种教学方式忽视了学生个体差异,导致个别学生不够学、跟不上。另外,教学方式和课程考核方式单一,笔试内容多以基础知识为主,实验考核也很少有解决实际问题,缺乏对学生创新能力和解决问题能力的培养;③教学难度大,《数据结构》这门课程比较抽象,涵盖内容广。大多数学生对一些抽象概念难以理解。另外还存在与先导课程衔接问题,有些知识能理解,但对于编程却无从下手,学习效果受程序设计课程的影响较大。

2.1教学方法有待改进

现在数据结构课程教学仍然有一大部分采用讲授型的教学模式,教师在课堂内传授知识,偏重知识灌输,学生在课堂外内化知识。教师没有很好地挖掘数据结构课程中包含的思想方法,也没有进行很好的总结归纳,没有合理地组织教学内容,课程教学缺乏系统性和创造性。学生在学习过程中只是遵从、记忆和模仿,是被动地接受知识,这样很难调动学生自主学习的积极性和协作学习的自主性,学生的思维和能力难以得到发展,最终导致学生创新能力不足,只具有一定的模仿能力。

2.2 教学资源不实用

现有教学资源主要表现形式有精品课程网站和网络课程,这些综合性教学平台主要是整合各类优质资源,知识力度很大,提供的教学资源有长达45min的教学视频,一个视频包含多个知识点,视频内容和传统课题表现形式相似,主要体现教师授课场景、PPT内容展示等,教学重点不突出,学生无法聚焦学习重点,资源可用性较差,学习效果不佳。同时,这些教学资源开发通常依赖专业的多媒体技术人员,任课教师难以亲自开发,而技术人员不一定熟悉教学规律,开发的资源不一定适用于教学,从而造成需与求之间的不对称,不利于教学活动的正常开展。

2.3 实践环节不到位

数据结构课程知识点多、抽象性高、逻辑性强、程序复杂,一般教材中只有算法的关键代码,不包含完整的宏和结构体的定义,学生学习的积极性不高,无法上机直接验证算法,同时算法的理论性较强,和开发实际项目差别较大,理解算法较困难,学生体验感差。此外,学生没有很好地学习先导课程,编程语言掌握不够扎实。数据结构课程的算法描述采用C语言居多,C语言中的函数、指针、结构体等是学习难点。学生学习了结构化程序设计思想,但对于函数、指针、结构体等难点知识掌握得不够好,不能透彻理解相应的数据结构和算法描述,不能灵活地应用于程序设计,导致不能很好地完成课程的实践环节。

3.计算思维引入数据结构课程教学

计算思维的本质是抽象和自动化,通过对数据的抽象建立数据的对象模型,通过对问题的抽象建立问题的数学模型,通过对数学模型进行算法设计实现问题的计算机求解,从而实现编程的自动化。“模型+算法”是数据结构的实质,数据元素之间存在的相互关系的集合就是狭义的数据结构,而广义的数据结构是在狭义定义的基础上加上基本操作的集合,完成数据结构的实现。 建立应用数据的对象模型就是从问题中抽象出数据对象,分析数据对象中各元素之间的逻辑关系,确定数据的逻辑结构,选取数据的存储结构,确定存储结构的基本操作。建立数学模型就是对问题原型进行分析,抽象、分解,挖掘数据间的关系和数据的变化规律,建立可用计算机求解且与原问题本质相同的理想化对象,數据结构中常见的数学模型一般有树形模型、图论模型、集合模型和排序模型等。最后,确定好计算策略,选取合适的算法对数学模型实现问题的求解。

4.改革内容

将从引入计算思维的角度对理论教学、实践教学进行改革

①理论教学方面。选择合适的教材是取得好的教学效果的前提,有些教材采用了类C或类Pascal语言描述,该语言无法直接在机器上运行,学生无法直接体会,为此,教学过程中应选择一本全用C语言或Pascal语言的教材。

②实验实践教学方面。数据结构这门课程的传统实验实践教学内容多以验证性实验为主,应用型、创新性的实验项目偏少,也很少能通过实验项目将各章节的内容有机组合,针对每个章节的内容,将设计若干个贴近生活的实验项目,这样可以极大提高学生的学习兴趣和主动性。比如在排序问题上应用在图书馆图书查询,最短路径问题应用在城市交通网络,栈应用在迷宫问题上等。

5.结语

计算思维已经成为一种计算机通识教育的研究热点,而数据结构这门课程主要是对算法的研究,将计算思维引入该课程,对教学质量的提高,学生思维能力、创新能力的培养都会产生积极的影响。

参考文献

[1]孔德宇,徐久成,孙全党,等.基于计算思维的大学计算机基础课程教学改革与创新研究[J].计算机教育,2014(17):16-19.

[2]伍民友,过敏意.论MOOC及未来教育趋势[J].计算机教育,2013(20):5-8.

[3] 司明,厍向阳,李占利,等.突出计算思维训练的数据结构教学实践[J].实验室研究与探索,2018,37(5):195-201.

[4] 赵媛,王杰,周立军,等.以计算思维为导向的C语言程序设计MOOC建设[J].实验技术与管理,2018,35(4):147-15

课题基金:名称:大学生计算思维的培养研究  以《数据结构》为例,(课题编号:2018jzyb-18)。

猜你喜欢

数据结构计算思维教学改革
数据结构线上线下混合教学模式探讨
重典型应用,明结构关系
程序设计课程中计算思维和应用能力培养问题研究
民族高校C语言程序设计课程教学改革的研究
算法的案例教学探析
浅谈艺术专业学生计算思维能力的培养
基于人才培养的技工学校德育实效性研究
现代信息技术在高职数学教学改革中的应用研究
以职业技能竞赛为导向的高职单片机实践教学改革研究
微课时代高等数学教学改革的实践与探索