- 1、本文档共6页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数据结构实验指导书设计及实现
数据结构实验指导书设计及实现摘要:本文首先介绍了数据结构的作用和地位,以及开展数据结构实践课程的必要性。接着分析了这个实践课程,在实施过程中所面临的各种问题。笔者设计了一份数据结构实验指导书,希望能帮助学生解决碰到的各类问题。实践结果证明指导书确实起到了很好的正面效果。最后针对目前还存在的问题,笔者提出了一些可行的方案。
数据结构课程是计算机相关专业的专业基础课程,它所讨论的知识和提倡的技术方法,无论是对后续课程的学习(比如:编译原理、操作系统、数据库系统等),还是对大型软件的设计与开发,都有着不可替代的作用。它是介于数学、计算机硬件和计算机软件三者之间一门核心课程。
数据结构较系统地介绍了几种常用的数据结构以及相应的存储结构和实现算法,同时介绍常用的查找和排序技术,并做了一些性能分析和比较,内容非常丰富。另外数据结构课程内容抽象,理论性强,学习量大;所用到的技术多,而学生此时所掌握的专业性知识相对较少或程度较浅;课程本身隐含的技术和方法相对丰富,这些都加大了学生学习数据结构的难度。
数据结构课程学习除了要求掌握书上的内容以外,还是一个复杂程序设计的训练过程,要求学生能编写高质量,易于交流以及符合软件工程规范的程序。因此设置数据结构课程实践环节十分重要。通过实验实践内容的训练,突出学生程序思维训练和加强上机调试程序的能力,提高学生组织数据及编写大型程序的能力。使学生能够深刻理解教学内容,提高数据抽象和算法设计的能力。并且可以在系统分析,结构设计,上机操作及程序调试等基本技能方面得到综合训练。合理的实验是原理与应用的结合,可以使得学生懂得如何把理论知识应用于解决实际问题,从而培养良好的动手能力。
目前,数据结构教学存在各种各样的问题,大概可以归纳为以下几点:一、先导课程先天不足,数据结构的先导课程有程序设计语言,离散数学和计算机导论等;其中以程序设计语言与数据结构课程的联系最为密切。二、教材内容过于抽象,教学方法过于单一;学生普遍反映听得懂,但是不会自己动手写。在这种情况下开展数据结构实践更有实际必要。
虽然实验的内容与教科书内容密切相关,解题所需要的各种技术也可以从教科书中找到,由于其出现的形式多种多样,需要仔细体会,反复实践后才能掌握。因此不少学生在课程实践时,会觉得无从入手。由于没有学习过软件工程,不懂软件开发应有的流程,往往边写边设计,造成不良的程序设计习惯。因为需求分析的不够明确,系统设计通常存在问题,往往做到大半甚至快完成时才发现,需求理解有误,浪费大量时间的反复修改。系统一旦运行能通过,个别测试数据得到正确的结果,绝大多数学生都会认为这个程序已经正确,编码可以结束,不会再去考虑程序的时间和空间效率,也不会再去检查代码是否存在冗余,有没有实施模块化的思想等等。这些都不利于培养学生数据抽象能力和形成良好的编程习惯,编写高质量的程序。
为了解决学生在课程实践过程中碰到的各类问题,老师可以在实践开始前加强引导,举例进行分析设计。而一份设计合理的实验指导书可以起到事半功倍的作用。
结合多年的教学经验及学生的实际情况,笔者设计了一份相对完整的实验指导书。指导书的内容共分为9个部分,分别是:该课程设计的目的,任务分析,结构和系统设计,调试分析,测试结果,小结,用户手册,附录及参考文献。
第一部分内容及意义显而易见,不再展开。任务分析主要是包括无歧义的任务说明;系统需要实现的各项功能;系统的输入数据和输出数据;以及各种情况下的测试数据。通过这一部分的书写,可以让学生充分地分析和理解问题,明确题目要求做什么,限制条件是什么。也就是让学生非常清楚的知道要做什么,而不涉及怎么做。 第三部分的结构和系统设计是在学生清楚要做什么之后,确定要怎么做。它包括分析确定需要处理的确定数据的逻辑结构,选择合适的存储结构,设计的数据类型;以及设计与功能相对应的模块(给出定义,写出函数头),确定模块的调用关系。有了这一部分的内容后,程序框架基本完成,学生可以在框架下进行编码,相对容易实现。
程序书写完毕后,调试也是学生需要特别注意的一个环节。调试分析包括碰到的各种调试问题,及相应的解决方案;算法的时间和空间复杂度的分析;老师提出的修改意见及修改结果(包括有没有当堂完成,测试结果正确与否等)等。这部分可以促使学生在编程结束时,对编程过程及结果有一个分析总结。老师有没有提出修改意见,也可以从侧面看出程序是否存在比较明显问题,或明显可以提高的地方。
第五部分的测试结果包括全部合法输入、部分非法输入及全部非法输入情况下, 相应的测试结果。由此判断程序是否正确及稳健。这可以促使学生去测试非正常情况下,程序有何反映,由此可以比较全面地验证程序是否正确及稳健。
小结在编码调试及测试之后进行,主要包括设计是否合理?(从提高程序
您可能关注的文档
- 探索在信息技术课教学中发展学生个性教学模式.doc
- 探索宇宙起源.doc
- 探索实行党建效益 推进国企科学发展.doc
- 探索小学数学课堂素质教育实施.doc
- 探索广播电视信息安全应急方案.doc
- 探索小学语文教学有效方法.doc
- 探索应用型人才培养中学生心理氛围构建.doc
- 探索式教学方法在初中英语教学中应用研究.doc
- 探索小学数学创新教育规律.doc
- 探索式教学法在初中数学教学中应用研究.doc
- 冀教版一年级数学上册第2单元 认识图形(一)2 搭积木.pptx
- 2025年法语DELFB2水平测试卷(高效备考策略).docx
- 2025年法语DELFB2水平测试卷:语法难点突破与例题讲解.docx
- 基于适应性循环理论的武鄂黄黄地区湿地生态风险评价与空间优化策略研究.docx
- 2025年大学辅导员职位竞聘:学生心理健康测评专业能力测评试卷.docx
- 2025年护士执业资格考试营养护理学专项营养干预效果评估试题精选.docx
- 2025年美发师中级实操考核试卷:美发师客户需求分析与沟通技巧试题.docx
- 噻并苯基聚合物的合成及其在半透明有机太阳能电池中的应用.docx
- 2025年面向旅游从业人员的阿拉伯语水平测试模拟试卷.docx
- 2025年辅导员招聘考试题库:班级管理策略与教育政策实施效果试题.docx
文档评论(0)