(2021版)
课程编码: |
UY402204 |
课程名称: |
数据结构与算法(C)实验 |
学分: |
1 |
实验学时 |
16 |
适用层次: |
本科 |
开课学期: |
3 |
适用专业: |
计算机科学与技术、电子信息工程、物联网工程、网络工程等 |
先修课程: |
C语言程序设计实验 |
后续课程: |
|
一、课程性质和任务
数据结构是一门理论性和实践性非常强的课程,学生仅仅通过课堂教学来获取理论知识是远远不够的,必须加强实践教学,通过亲自动手,针对实际问题和典型的数据结构和算法,设计解决方案,并上机输入,编辑,检查,修改,调试和运行程序,从成功和失败的体验中得到锻炼,才能够掌握和运用所学到的理论知识来解决实际问题,达到学以致用的目的。
二、教学目标及要求
计算机编程中加工处理的对象是数据,而数据具有一定的组织结构,所以学习编写计算机程序仅仅了解计算机语言是不够的,还必须掌握数据组织、存储和运算的一般方法,这是数据结构课程中学习和研究的内容。具体要求如下:
(1)熟练掌握C语言的编辑、编译、调试程序;
(2)会书写类C语言的算法,并将算法转变为程序实现;
(3)正确理解各种数据结构的逻辑特性、存储表示和基本操作的算法实现;
(4)有较强的逻辑分析能力;
(5)针对不同的问题选择合适的数据结构,提高算法设计的能力和动手实验的技能;
(6)学会分析研究计算机加工的数据结构的特性,以便为应用涉及的数据选择适当的逻辑结构、存储结构及其相应的算法,并初步掌握算法的时间分析和空间分析的技术;
(7)本课程的学习过程也是复杂程序设计的训练过程,要求学生编写的程序结构清楚、正确易读,符合软件工程的规范,从而培养学生的数据抽象能力。
3、实验内容与学时分配
序 号 |
项目 名称 |
实验目的与内容 |
学时 |
实验 性质 |
实验类型 |
开出要求 |
主要仪器 设备 |
1 |
线性表 |
目的:熟悉线性表的基本运算在两种存储结构上的实现 内容:选择不同的存储结构,实现线性表的建立、插入、删除、合并等操作 |
2 |
必修 |
验证性 |
必做 |
PC机、VC++6.0 |
2 |
栈和队列 |
目的:掌握栈和队列这两种特殊的线性表,熟悉它们的特性 内容:栈和队列的建立、插入和删除等操作 |
2 |
必修 |
验证性 |
必做 |
PC机、VC++6.0 |
3 |
二叉树 |
目的:掌握二叉树的生成、遍历及求深度等算法 内容:二叉树的存储结构,及各种操作的算法实现 |
4 |
必修 |
综合性 |
必做 |
PC机、VC++6.0 |
4 |
图 |
目的:掌握图的邻接矩阵、邻接表的存储方式和图的基本运算,特别是深度遍历和广度遍历 内容:建立图的邻接矩阵、邻接表,对图进行深度优先和广度优先遍历 |
4 |
必修 |
综合性 |
必做 |
PC机、VC++6.0 |
5 |
查找 |
目的:熟练掌握各种查找表的查找方法 内容:顺序查找法、折半查找法、索引顺序表查找 |
2 |
必修 |
验证性 |
必做 |
PC机、VC++6.0 |
6 |
排序 |
目的:熟练掌握各种排序的算法思想、方法及稳定性 内容:分别用插入、快速、归并等方法对一组数据进行排序,并比较性能。 |
2 |
必修 |
设计性 |
必做 |
PC机、VC++6.0 |
(实验性质分为选修与必修;演示性、验证性、综合性、设计性、创新性等;开出要求:必做、选做)
三、教材与教学参考书
1、使用教材:
《数据结构》(C语言版) 严蔚敏 吴伟民编著 清华大学出版社 2018
《数据结构》(C语言版 第2版 附微课视频)严蔚敏 李冬梅 吴伟民 著 人民邮电出版社,2017
《数据结构题集》(C语言版)严蔚敏 吴伟民编著 清华大学出版社 2018
2、实验指导书:
《数据结构教程-上机实验指导》 (第5版) 李春葆 清华大学出版社,2017
《数据结构实验指导》 吴刚 王斐 朱彩蝶 自编教材 2020
四、考核及成绩认定
1.本课程16个学时实验,共8次实验。
2.实验实行考核制,成绩采用百分制,根据实验完成情况评分。考勤20%,实验操作占50%,实验报告占30%。实验操作成绩根据操作者的规范与否和熟练程度以及实验结果综合考察,按A、B、C、D、F等级记分。实验报告主要考核实验者对实验原理的理解、实验步骤的条理性、实验现象的解释和实验数据处理正确与否。考勤、实验报告和实验操作考核计算课程成绩。
3.考查学生对数据结构知识的应用能力,验证或设计常用数据结构应用算法,培养学生解决与分析实际问题能力。
4.实验过程中不能完成实验要求,不能得到正确的实验结果,不能从技术角度优选解决方案获得有效的结论<60分;实验过程中认真完成实验要求,不能得到正确的实验结果,实验报告格式正确,步骤叙述清楚,没有正确分析实验数据,但是结合理论分析可以从技术角度优选解决方案获得有效的结论60-75分;实验过程中认真完成实验要求,得到正确的实验结果,实验报告格式正确,步骤叙述比较清楚,正确分析实验数据,从技术角度优选解决方案获得比较有效的结论75-90分;实验过程中认真完成实验要求,得到正确的实验结果,实验报告格式正确,步骤叙述清楚,正确分析实验数据,从技术角度优选解决方案获得有效结论90-100分。
五、主要参考文献
[1]严蔚敏.数据结构(C语言版). 北京:清华大学出版社,2018.
[2]严蔚敏,李冬梅,吴伟民 著. 数据结构(C语言版 第2版 附微课视频). 北京:人民邮电出版社,2017.
[3]李春葆. 数据结构习题与解析(C语言篇). 北京:清华大学出版社,2000.
[4]殷人昆. 数据结构. 北京:清华大学出版社,2000.
[5][美]马克·艾伦·维斯(Mark,Allen,Weiss)著,冯舜玺译.北京:机械工业出版社,2019.
[4] 李春葆.数据结构教程-上机实验指导 (第5版).北京:清华大学出版社,2017.