《数据结构》实验讲义

《数据结构》实验讲义

ID:2090504

大小:63.50 KB

页数:17页

时间:2017-11-14

《数据结构》实验讲义_第1页
《数据结构》实验讲义_第2页
《数据结构》实验讲义_第3页
《数据结构》实验讲义_第4页
《数据结构》实验讲义_第5页
资源描述:

《《数据结构》实验讲义》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、《数据结构》实验讲义课程简介课程名称:数据结构授课对象:计算机科学本科授课班级:2005教材版本:《数据结构》(C语言版)清华大学出版社学时:90其中:理论:72实验:18授课教师:韩英杰电子邮箱:ieyjhan@zzu.edu.cn电话:13673712578实验一(选做,设计性实验,2学时)实验题目:学生成绩管理系统l学生记录结构如下:structstudent_type{charid[5];   /*学生学号*/charname[11]; /*学生名字*/intage;    /*学生年龄*/ intmath;   /*数学成绩*/ inteng;    /*英语成绩*/ in

2、tds;    /*数据结构成绩*/intos;    /*操作系统成绩*/}l10个学生信息如下:1001zengliang19868784801002yaochang18758579681003chuhua20859876891004liuchang21698575881005zhaoxia19898575841006lina20898495751007chenzhen19908587851008wangkai20828650691009xiaoyu19847470801010weikun2068847986实验目的:1、熟悉C语言的书写规范,注意输入、输出的方式及错误处理方式。

3、2、理解算法五个要素的确切含义,掌握计算语句频度和估算算法时间复杂度的方法。3、熟悉C语言函数的定义、函数的调用,参数的传递等细节4、熟悉C语言读写文件的函数及其使用。实验要求:l将这10个学生信息存入到磁盘文件stu_list.in中。l将磁盘文件中的所有学生记录读入内存中一块静态顺序空间中(使用数组申请),求出所有学生数学的平均成绩。l将磁盘文件中的所有学生记录读入内存中一块动态申请的顺序空间中(使用函数malloc()申请),求出所有学生数学的平均成绩。实验内容和实验步骤:(由学生填写)实验用测试数据和相关结果分析:(由学生填写)实验总结:(由学生填写)实验二(必做,设计性实验

4、,2学时)实验题目:顺序表的基本操作的实现1、在非递减有序的顺序表中插入一个元素x,保持顺序表有序性。2、顺序表元素的逆置3、两个(有序或无序)顺序表的合并实验目的:1、熟悉将算法转换成程序代码的过程。2、了解顺序表的逻辑结构特性,熟练掌握顺序表存储结构的C语言描述方法。3、熟练掌握顺序表的基本操作:查找、插入、删除、合并等,掌握顺序表的随机存取特性。实验要求:1、要求用静态分配的一维数组和动态分配的一维数组来完成实验题目。分析静态分配的一维数组和动态分配的一维数组在顺序表基本操作实现上的共同点和区别。2、对顺序表插入的算法,要求用两种方法实现:其一:自己编写实现函数;其二:调用顺序

5、表基本操作ListInsert(SqList&L,inti,ElemTypex),比较使用自己编写的插入函数和调用顺序表基本操作的函数两种实现方法之间的优缺点。3、对所编写的算法进行时间复杂度分析。实验内容和实验步骤:(由学生填写)实验用测试数据和相关结果分析:(由学生填写)实验总结:(由学生填写)实验三(必做,设计性实验,2学时)实验题目:单链表的基本操作1、在线性单链表中删除值介于mink和maxk之间的结点。2、线性单链表逆置3、两个(有序或无序)单链表的合并实验目的:1、了解线性表的链式存储结构和顺序存取特性,熟练掌握线性表的链式存储结构的C语言描述方法,2、熟练掌握动态链表

6、的基本操作查找、插入、定位等,能在实际应用中选择适当的链表结构。3、掌握用链表表示特定形式的数据的方法,并能编写出有关运算的算法。实验要求:1、与实验二比较,对于线性表的基本操作的实现,使用顺序存储结构和链式存储结构各有什么优缺点。2、选做:使用书37页,一种带头结点的线性链表LinkList来完成以上题目。体会作为链表中位序的概念和位置的概念哪个更重要。实验内容和实验步骤:(由学生填写)实验用测试数据和相关结果分析:(由学生填写)实验总结:(由学生填写)实验四(必做,设计性实验,2学时)实验题目:栈的基本操作的实现1、用栈实现括号匹配的检验2、用栈实现形如a+b@b+a#的中心对称

7、的字符序列的检验。3、用栈和队列实现形如a+b@b+a#的中心对称的字符序列的检验。实验目的:1、熟练掌握栈这种抽象数据类型,能在相应的应用问题中正确选用它。2、熟练掌握栈类型的两种实现方法(顺序栈和链式栈),两种存储结构和基本操作的实现算法,注意栈空和栈满的判断条件及它们的描述方法。3、熟练掌握队列这种抽象数据类型,能在相应的应用问题中正确选用它。4、掌握循环队列与其它顺序结构实现上的不同及解决办法,熟悉各种队列的基本操作在循环队列上的实现。实验要求:1

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。