庆长文库网

数据结构实验教学课程体系研究-pg麻将胡了模拟器链接

pg麻将胡了模拟器链接-pg电子赏金女王模拟器试玩 > 专题范文 > 公文范文 > / 正文

2023-01-06 20:30:03

摘要:针对石油专业“数据结构”实验教学中存在的问题,在分析数据结构课程特点、教学现状的基础上,探索了具有鲜明石油特色专业的数据结构实验层次化教学方法。构建该课程面向专业导向的“实验教学体系层次化、实验教学内容专业化、实验教学过程可视化”的教学模式。教学实践表明,此方法能够充分发挥学生的实验兴趣,对培养学生系统的工程能力和创新能力有明显作用。

关键词:数据结构;实验教学;课程体系;算法

数据结构是计算机专业的一门核心课程,是研究非数值计算的程序设计问题中计算机操作对象以及它们之间的关系和操作等的一门学科。课程概念多,理论教学抽象,为了使学生更好地理解数据对象、数据关系在计算机中的存储表示、运算以及执行算法,必须与实验教学紧密结合。我校的一些具有深厚石油背景的非计算机类专业,例如勘察、测井、资信以及测控等专业都开设了数据结构课程;非计算机专业实践教学过程确实存在一定的困难,主要表现为:学生对实验课缺乏学习兴趣、理论基础薄弱以及解决实际问题能力差等。笔者作为该课程的主讲教师,结合自己在数据结构教学中的一些体会,谈谈自己关于目前数据结构实验课程体系研究与探索的认识。

1数据结构实验教学的现状

1.1前导课程知识缺乏

现有的数据结构教科书的算法描述语言主要分为c语言版、c 版和java语言版3个版本。根据我校的具体实际情况,c语言程序设计和c 面向对象程序设计被列为数据结构两个主要的前导课程。学生对它们的熟悉、掌握程度,直接关系到数据结构实验课程的教学效果。我校有多个院系在大学一年级第一学期开设c语言课程,课时设置为64学时,其中8~16学时的实验课时不等。不同院系所开设的“c语言程序设计”的教学内容与教学要求并不完全一致。作为学生最先接触的程序设计语言课程,教师由于课时有限、内容多,使c语言的教学内容处于初级阶段,课堂上讲解基本概念及简单程序的编写占用了大部分教学时间。由于对数组、结构体、指针等复杂数据类型讲解不够,导致石油类专业学生对指针和结构体的认识和理解不深。然而,这些知识点不仅是数据结构算法实现的重要基础,也是未来工作或深造学习过程中使用频率很高的内容。因此,在数据结构实验教学中,尽管老师费尽唇舌,学生仍然模糊不清,致使实验效果不理憨,学生甚至丧失了对该课程学习的兴趣与信心。

1.2教学内容安排不尽合理

目前我校有些院系的c语言与c 语言的实验教学内容基本相同。部分学生为了满足计算机课程学分的需要,在一个学期同时学习c语言和c 语言,这导致同学缺乏足够的时间对所学内容进行沉淀和吸收。在数据结构实验内容设置过程中,实验课时没有根据石油专业具体需求进行合理设置,教师在面向不同的专业的学生时采用相同的实验案例,学生在练习的教师指定的题目时只是简单地实现教科书中以章节划分为主的知识点,缺乏处理复杂问题的机会, 缺少创新性以及与学生本专业相结合的实验联系。由于只注重了计算机专业课程知识点的验证性实验,而忽略了非计算机专业学生的专业背景,这使得非计算机专业学生很难产生“共鸣”,教学效果达不到理想的目标。

1.3实验环境搭配与专业需求脱节

目前我校数据结构的实验环境不能完全适应专业教学发展需要。在windows操作系统下,课题组一般采用visual c 6.0作为平台,让学生搭建基于console控制台工程,在命令行的方式下运行。由于我校具有鲜明的石油特色,特别是在石油的勘探与生产中需要评估潜在的石油资源,准确直观地定位油气资源的空间分布及其特征,并需要高效融合卫星影像、航拍地图、地震勘探、地表地质研究、地下横断截面影像以及现有井位等信息。这需要开源的可视化平台以及地理信息系统来满足面向专业的实验需求。笔者在指导学生上机实验的过程中发现,石油专业学生普遍反映数据结构上机实验远离当前专业所需要的开发环境,缺乏友好的图形用户界面,因此对实验重视程度不够。

1.4实验过程流于形式

数据结构课程本身较强的逻辑性和抽象性决定该课程的难度较大,学生首先从心理上畏惧数据结构,害怕实践,拿到实验任务到上机实习,常常茫然不知如何动手。实验教学过程中缺乏合适的监督管理和奖惩制度,大多数学生因程序设计基本功不扎实,当任务无法按时完成时就采取抄袭方式交差,企图蒙混过关。在实验过程中常出现这种现象:当某个题目暂时无人做出来时,同学们还能静下心来实践;当某位同学做出来以后,结果程序很快就会传播,部分同学再也“无心恋战”了。因此,有的学生一学期下来做了多次实验,自己却一个程序也未能调试通过,逐渐养成了“坐享其成”的习惯,久而久之,对编程失去兴趣,根本就不会编程序调程序,程序设计的能力也就可想而知了。

2数据结构实验课程体系

2.1加强经典算法及其衍生方法的教学实践

在“数据结构”课程实验设计中,由于算法众多,编程实现所有算法是不实际也是不必要的。因此应该重点编程实现典型算法,同时注意讲解该算法在石油行业的应用以及该算法目前主要的衍生算法。这样一个典型的算法往往能够起到以点带面的作用,只要掌握了这些算法的实现方法以及后续的改进策略,就可以将知识点构筑成立体的知识网,也就掌握相关数据结构的本质。当然,在选择典型算法的时候,要考虑算法的代表性、难易程度、综合性等因素。

2.2面向专业学生的课程群建设

目前,国内高校在数据结构教学研究中的实验教学方法、教学模式和教学内容优化等方面取得了一些实践性成果,但在课程综合体系建设方面仍然有一些不足[1]。我校非计算机专业实验教学时尤其要强调数据结构与其他相关课程,特别是石油信息科学之间的紧密衔接,并将离散数学、数据库、地理信息系统、并行计算等课程的主要知识点分散、穿插、融入到数据结构的教学中,从而优化整个课程体系结构。课题组在上机实验之前,在课堂上以程序实例的形式剖析c语言中的指针、结构体和函数等知识点,尤其要在学生难理解、容易混淆和犯错误的地方,布置涉及这些知识点的课外编程作业,通过作业批改发现问题后集中重点讲解。

2.3建立面向不同专业实验考核方式

针对不同院系制订合理的数据结构实验考核指标,加大对学生实验环节的考核力度,杜绝学生“等”、“要”、“靠”。在实验环节的考核中,概念基础层题目一般要求1周内完成,综合型题目一般要求2~3周内完成,对于综合型题目,学生先按3~4人分成一组,确定小组成员的角色与任务,每人完成一个模块,通过统一的实验环境接口组成一个完整的程序,最后随机抽取小组中的一名代表讲解编程的设计思路,演示程序执行情况。在这个过中程中教师提供必要的与测井、勘探数据处理相关的学习资料、参考方法等,为学生完成任务提供智力支持,使学生透彻地理解各种数据对象的特点,学会数据的组织方法和实现方法,选择合适的数据结构,甚至改造基本的数据结构,并进一步培养基本的良好的程序设计能力。学生要在规定的时间请辅导教师验收实验题,过期不验收,视为自动放弃,本次实验题没有成绩。

2.4实验教学体系层次化

以往的实践教学中实验大都由教师按教材单元统一组织进行,先理论后实践,实践只是对理论知识的简单验证,教师只关心学生是否来做实验,而不关注学生的专业实验需求、实验的效果如何。结果是学生对实验越来越没兴趣,不利于学生创新意识的培养和实践能力的提高。针对数据结构课程抽象性强、难度大的特点,构建一个渐进式、层次化的实践教学体系势在必行。我们尝试着按基础性c语言实验、结合面向对象思想的c 实验、数据结构可视化实验和基于cuda的创新性实验4个层次构建“数据结构”课程的实验教学体系,如图1所示。

第1层次,基础性c语言实验。针对教科书某种数据结构的基本运算如插入、删除、查找等算法设计实验项目,其目的是让学生掌握基本概念基础知识和基本操作,通过实验学会如何从算法转变为程序。如队列结构的基础实验可以是队列的插入(入队算法)或删除运算(出队算法)。

第2层次,结合面向对象思想的c 实验。在一个实验项目中封装某种数据结构的一些基本运算函数,提高学生抽象分析能力。如线性表结构的c 实验包括链表的创建、插入、删除、遍历等基本函数。

第3层次,数据结构可视化实验。可视化实验是一个面向工作的开发技能提高过程。以期缩短学生在数据结构上机实验与当前主流专业软件集成开发环境之间的距离。

第4层次,基于cuda的创新性实验。我校地质勘探专业的教学中,地震数据处理一直是主要教学内容,尤其是叠前深度偏移、地震相干数据体分析等内容更是教学过程中的重点和难点。然而,随着地震采集技术的进步,地震数据量越来越大,对处理速度的要求也越来越高,这就对高性能计算设备提出了更高的要求。由于gpu拥有大规模的并行处理单元,因此它特别适合于需要进行密集型数据处理和并行计算的地震数据处理。

在gpu计算领域,cuda提供了一个良好的并行计算软件开发环境,得到了gpu计算软件开发者的普遍青睐。由于cuda提供c语言编程接口,因此在勘探专业的数据结构实验教学中,针对专业问题给学生自主设计并行算法的选择的空间,引导学生深化现有问题,鼓励学生提出新的问题,分析新问题以及解决新问题。

2.5可视化数据结构实验框架研究

俗话说,“万事开头难”。如果要求学生从头开始编写程序,学生常感到无从下手,浪费了宝贵的教学时间,因此有必要为学生提供一个辅助的开发环境。数据结构实验环境是数据结构计算机辅助教学软件的重要组成部分[2]。为了达到实验教学过程可视化目的,我们设计了可视化数据结构实验框架。学生利用框架,只须将精力集中在实现数据结构模型本身就可以利用本实验框架达到可视化的效果,把抽象的数据结构在屏幕上通过图形用户界面形式显示出来,这样学生可以在不需要实现可视化的代码的情况下实现可视化数据结构实验,既增加了学习兴趣,又提高了学习效率[3]。可视化实验框架采用模型、视图和控制器框架,通过mvc模式将数据结构中的集合关系、线性关系、树状关系和图状关系等数据模型本身和可视化部件有机结合起来。根据我校勘探、地质等不同石油专业现有的实际集成开发环境以及相应的专业需求,我们提供两种实验框架备选:方案一,选用visual c 6.0 mfc实现“数据结构”中所有经典算法的实验框架,共计21个;方案二,采用visual c 9.0 qt4.0。由于地理信息系统在石油勘探、生产开发、设备管理、管道管理、运输管理、销售规划以及地面建设方面具有广泛的应用,因此我们提供的qgis作为基础开发框架。

2.6实践教学过程工程化

信息科学工作者应具备科学的工作方法和良好的工作作风,使学生从实验课每个实践环节得到应有的工程训练。特别是在问题分析、抽象设计阶段,可以采用“任务驱动式”教学,以“任务书”的形式将设计问题下达给学生,要求学生按照软件工程的开发流程进行实践。我们将由课题组印制的具有统一格式的实验文档下发给学生,在实验报告中规定了实验题目的描述内容,包括专业问题描述、实验目的、实验内容及要求、需求分析、概要设计、界面设计、详细设计、测试数据、程序调试问题以及结合专业思考等。

教师根据“调试问题”以及“结合专业思考”的内容可以及时做出针对性解答并向学生提出问题,教会他们举一反三,促进学生的思维向新和深的层次发展,加深他们对所学知识的理解。

3结语

数据结构实验是培养具有扎实的计算机理论知识和创新能力的应用型人才的重要环节。我校石油特色鲜明,呈现多学科协调发展的学科专业布局。如何在专业跨度大、工学背景强、学时相对少的情况下,“数据机构”课程实验教学工作仍然能够取得良好的效果,是当前具有挑战性的课题。本文结合自身实验教学的经验,根据石油专业的特点,通过合理、有效、系统地组织实验内容、强化试验考核以及开发可视化实验环境平台来强化理论教学的效果、提高学生分析问题和解决问题的能力。从我校的数据结构教学实践看,采取了这些措施和方法后,巩固了同学“献身石油的理想”、增强了自信心、激发了学习数据结构的兴趣,真正实现了“教”和“学”的良好互动,提高了教学质量。

参考文献:

[1] 张铭,许卓群,杨冬青,等. 数据结构课程的知识体系和教学实践[j]. 计算机教育,2004(2):89-91.

[2] 周红鹃,胡学钢,田卫东. 面向多层次用户的可视化数据结构实验环境研究[j]. 吉林大学学报:信息科学版,2005(23): 130-134.

[3] 徐本柱,胡学钢,王浩,等. 基于mvc模式的可视化数据结构实验框架[c]//中国计算机学会. 全国软件与应用学术会议(nasac)论文集. 北京:北京航空航天大学,2004: 87-91.

research on curriculum system of data structure experiment teaching

lian yuanfeng, zhang xiumei, li li

(department of computer science and technology, china university of petroleum, beijing 102249, china)

abstract: concerning the existing problems of petroleum specialty in data structure experiment teaching, this paper investigates the hierarchical experimental teaching method based on the distinctive characteristic of petroleum specialty for data structure. a teaching mode based on “specialty oriented” is established which combines “experimental teaching system hierarchy, experimental teaching content specialization, experimental teaching process visualization”. practice indicates that it can be feasible in bringing student’s experimental interesting and make apparent function in cultivating student’s engineering capability and innovation ability.

key words: data structure; experimental teaching; curriculum system; algorithm

(编辑:白杰)

  • 上一篇:
  • 下一篇:
网站地图