• 工作总结
  • 工作计划
  • 心得体会
  • 述职报告
  • 事迹材料
  • 申请书
  • 作文大全
  • 读后感
  • 调查报告
  • 励志歌曲
  • 请假条
  • 创先争优
  • 毕业实习
  • 财神节
  • 高中主题
  • 小学一年
  • 名人名言
  • 财务工作
  • 小说/有
  • 承揽合同
  • 寒假计划
  • 外贸信函
  • 励志电影
  • 个人写作
  • 其它相关
  • 生活常识
  • 安全稳定
  • 心情短语
  • 爱情短信
  • 工会工作
  • 小学五年
  • 金融类工
  • 搞笑短信
  • 医务工作
  • 党团工作
  • 党校学习
  • 学习体会
  • 下半年工
  • 买卖合同
  • qq空间
  • 食品广告
  • 办公室工
  • 保险合同
  • 儿童英语
  • 软件下载
  • 广告合同
  • 服装广告
  • 学生会工
  • 文明礼仪
  • 农村工作
  • 人大政协
  • 创意广告
  • 您现在的位置:六七范文网 > 其它相关 > 正文

    高职院校“数据结构Java语言描述”课程的实验设计

    来源:六七范文网 时间:2023-05-30 22:55:24 点击:

    摘要:本文根据高等职业院校学生的特点,从提高学生的实验能力出发,结合教学实践的经验,讨论了基于Java语言的“数据结构”课程的实验方法。

    关键词:Java语言;实验;算法

    “数据结构”是高等职业技术学院(以下简称高职)计算机相关专业的一门重要专业基础课,重点讨论计算机数据处理领域的方法问题,具有概念较为抽象、方法灵活、强调逻辑思维能力的特点。对于高职学生来说,这是一门难度较大、实践性强的课程。

    实验是本课程教学的重要组成部分,是帮助学生加深对教学内容的理解,提高学生利用程序设计语言实现算法,提高严密逻辑思维能力不可缺少的组成部分。由于Java语言是一种完全面向对象的程序设计语言,因此在提高程序的复用性和安全性时,在不同类的资源配置方面,较面向过程的程序设计语言有更高层面的要求,这给基础薄弱的学生完成实验带来很大困难,因此我们需要在要求上、结构上、方法上重新组织和设计实验。

    1实验要求分析

    1.1基本要求

    掌握不同逻辑结构的基本算法,并通过程序加以验证。在实验的总体结构中实现函数的编写、调试,并通过调用测试验证其准确性。这是每个学生都必须完成的部分。

    1.2提高性要求

    (1) 编写在基本算法上进行修改的算法。

    (2) 能够使用课程提供的逻辑结构和物理结构实现其他拓展性实验,如统计二叉树的结点个数等,开拓学生的思路,提高学生分析问题、解决问题的能力。

    (3) 灵活应用编写的函数,实现不同的功能要求,如利用队列实现单链表的逆序排列,培养学生对实验总体结构配置、函数外特性的认识。

    这部分实验主要针对基础较好的同学,为他们提供发挥能力的空间,有效提高他们的学习兴趣。[4]

    1.3扩展性要求

    部分学生学习基础较差,对类的认识较模糊,对函数在程序设计中的作用缺乏认识,需要在函数的作用、函数的编写及函数的调用等方面加强实验。

    2实验作业的设计

    2.1作业的说明和任务

    说明:介绍实验使用的类及实验的结构构成。

    任务:指明需要编写的函数及相应的调用要求。

    2.2相关的类

    提供完成实验所使用的类。

    2.3作业主体

    包括实验的总体结构及需要编写的函数,对于编写的函数只给出函数名,要求完成整个函数;在整个结构中以填空方式调用函数。对于提高性的实验部分,以文字、图示方式给出提示,加以引导。

    根据课程的要求和学生的现状设计客观、可行的作业。一要以符合人们认识事物的特点加以引导,避免因为作业难度太大挫伤学生的学习热情;二要达到预期的实验目的。因此在作业组织中要做到有说明,对整体结构加以介绍;有提示,给学生完成实验的思路;有参照,对有一定难度的任务给出具有参考价值的函数。

    3实验的实施

    3.1实验准备

    实验前开设实验指导课,说明和分析实验作业的构成、注意点及实验所涉及的类,介绍和分析与实验有关的算法。

    3.2实验过程

    加强现场指导,注意与学生的交流、沟通,及时发现学生的困难,有针对性地帮助学生提高认识、解决问题。为了提高实验效率,提示学生注意类的小型化、原子化,提高他们发现问题和解决问题的能力。

    3.3实验结果分析

    实验完成后进行总结,对实验作业进行分析,主要讨论实验中的一些普遍问题,不仅有对算法的分析,还有对实现算法所用的存储结构、实现过程的要素和环节的讨论,帮助学生总结实现算法的内在规律。[5]

    4编写函数的提示举例

    下面以编写函数rev()为例,实现将单链表中的数据按相反的顺序存储的功能。

    提示:

    4.1基本过程1

    (1) 将单链表拆分成两个部分,附加表头结点单独列出,建立一个空的单链表(称为单链表1),其余部分构成一个无附加表头结点的单链表(称为单链表2)。

    (2) 当单链表2不空时,取出第一个结点,插在单链表1的表头位置(即附加表头结点之后)。

    (3) 重复②操作,直到单链表2为空。[3]

    4.2基本过程2

    当单链表不为空时,先将HL指向表头结点,即表头附加结点的后一个结点,然后将表头附加结点的next域设置为NULL,依次从单链表中取出表头结点,将其插入表头附加结点之后。[1][2]

    以上过程如图1~图5所示。

    图1初始情况

    图2拆分成两个单链表

    图3取单链表的第一个结点

    图4插入第一个结点

    图5插入第二个结点

    5结束语

    由于采用了以Java语言为算法的实现语言,“数据结构Java语言描述”课程对高职学生提出了更高的要求,而如何通过Java语言实现算法一直是本课程的一个难点。因此,要设计合理有效的实验环节,除了组织切实可行的实验作业外,还要加强引导、分析和总结,从学期开始的全程指导到逐步放手,帮助学生在学习过程中发挥积极的作用。由于本课程是我系近年来才开设的(以前采用C/C++语言描述),因此课程的实验组织还需要进一步完善。

    参考文献:

    [1] 朱战立. 数据结构-Java语言描述[M]. 北京:清华大学出版社,2005.

    [2] Duane A.Bailey. 数据结构-Java语言描述[M]. 北京:清华大学出版社,2004.

    [3] 殷人昆. 数据结构[M]. 北京:清华大学出版社,2001.

    [4] 杨桂芝.“数据结构”教学方法探索与实践[J]. 计算机教育,2007(6):8-9.

    [5] 王红.“Java语言程序设计”课学生能力的培养[J]. 计算机教育,2007(15):31-32.

    (编辑:张玥)

    推荐访问:数据结构 描述 语言 课程 实验