“数据结构”课程的实验创新探讨.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
“数据结构”课程的实验创新探讨   文章编号:1672-5913(2009)08-0124-02   摘要:“数据结构”课程是计算机学科的专业基础课,是一门实践性比较强的课程。课程中的实验环节显得尤为重要,该环节可以锻炼和提高学生对复杂程序的设计能力。笔者在多年的教学过程中摸索出实验环节的教学模式,与大家共同探讨。   关键词:数据结构;教学内容;组织形式;考核方式   中图分类号:G642   文献标识码:B      利用计算机来解决实际问题的步骤是:给出问题描述,将问题抽象成数学模型,根据数学模型写出求解问题的算法,再根据算法写出程序代码,最后上机调试并分析结果。在上述过程中,非数值的数学模型是数据结构研究的主体,它操作实现主要是通过数据结构的实验教学环节来完成的,在该教学环节中作为教学主体的学生,首先要具备抽象思维能力和语言基础。往往在环节实施过程中,语言基础是薄弱环节,以至于课时用完了,学生还是写不出满意的算法及代码。鉴于此,我们在教学内容、组织形式、考核方式等教学环节中进行了一些设计,与大家一起来探讨。      1教学内容      我们在教学内容上,围绕课内、课外两条主线进行改革,给学生较大的自主学习空间,有利于学生创新精神及实践能力培养。整个实验教学由浅入深,重在基础、提高能力、挖掘潜力、拓展思路。在课时内的教学主要以基础性实验为主,安排一个综合性实验;课时外的教学主要以设计性实验和综合性实验为主。   1.1学时内的教学内容   在我校数据结构课程共64学时,理论课48学时,实验课16学时。安排了5个实验项目,由于多数学生语言基础不算太好,特别是指针的运用和结构体的定义是薄弱环节,所以在做实验项目时,主要是从教材上的算法出发,使得学生有章可循:   项目1:顺序表的操作   主要训练学生对顺序存储结构的理解,掌握顺序表的查找、插入和删除等基本操作;同时引导学生对于静态参数传递和动态参数传递的使用方法。   项目2:单链表的操作   主要是与顺序存储结构进行比较,完成线性表在链式存储结构上的查找、求长度、插入、删除等基本操作。   项目3:栈和队列的应用―停车场的管理   深入了解栈和队列的特征,以便在实际问题背景下灵活运用;利用两个栈和一个队列模拟停车场管理及相关操作。   项目4:二叉树的遍历   掌握二叉树的结构特征,以及二叉链表存储结构的特点;掌握二叉树三种(先序、中序和后序)遍历方法;熟悉并且掌握递归算法。   项目5:折半查找和快速排序   掌握折半查找和快速排序的方法,掌握要进行折半查找应该采取的存储结构形式。并进行对其进行时间复杂度的分析。   对于每个实验项目的实验目的和实验要求,提前2周放在教学平台上。在实验前1周,利用辅导课时间,以测试的形式,让学生写出算法代码,由于每个实验基本上可以在教材中找到源代码痕迹,所以难度不大。   在实验教学过程中,采用任务驱动式的教学模式,首先从总体思路上讲解10分钟左右,边辅导边发现问题,每半个小时总结1次。由于学生已经在课前作好了准备,在实验室里他们赢得了更多的自主时间用来调试程序,分析结果。学生水平参差不齐,在上课过程中穿插实验验收考核,考核的形式是现场写出主要操作的代码,在规定的时间内进行调试、分析。验收完一个模块,学生再进行下一个任务。教师通过讲课、辅导、验收使得实验课堂充实起来,由于学生每个时间段都有活干,所以课堂气氛非常活跃,讨论热烈。   1.2学时外的教学内容   在学时外,以课程设计的形式,利用开放实验室时间,严格按照软件工程的思想进行训练。   在课程设计时,教师列出多个设计课题,每个课题都有相应的要求或说明。各课题的难易度是有差异的,每个课题后以标准分的形式标出了难易度。例如:   课题1:设有n个人围坐在圆桌周围,现从某个位置m(1≤m≤n)上的人开始报数,报数到k的人就站出来。下一个人,即原来的第k+1个位置上的人,又从1开始报数,再报数到k的人站出来。依此重复下去,直到全部的人都站出来为止。试设计一个程序求出出列序列(难易度90)。   课题2:用递归算法和非递归算法实现下面问题,并比较其算法优势。把一只老鼠放进一个无盖的大箱内, 箱内设置若干隔板,使老鼠走动的方向受到阻碍,看其如何找到一条通道,走出大箱(难易度80)。   “难易度90”表示设计中的各项全部达到要求时的最高得分大致为90。因此,参加课程设计的学生首先要了解设计的任务,仔细阅读各题的设计要求,然后根据自己的基础和能力情况从中选择一题。一般来说,选择课题应以在规定的时间内能完成,并能得到应有的锻炼为基本原则。课程设计的总体思路是:数据模型选取→构造求解算法→选择存储结构→编写程序代码→调试测试→总结分

文档评论(0)

yingzhiguo + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:5243141323000000

1亿VIP精品文档

相关文档