- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
《数据结构》实验大纲.
《数据结构》实验教学大纲
开课单位: 宁德师范学院计算机系
设置类别: 非独立设课
学 时: 16学时
实验项目总数: 7
实验教材:《数据结构习题集与上机指导》,严蔚敏,清华大学出版社
主要设备(环境):微机、C语言编程环境(VC++)
教学目的
《数据结构》是计算机科学与技术专业的一门重要的专业基础课,课程旨在使学生学会计算机加工的数据对象的特性,学会数据的组织方法,以便选择合适的数据的逻辑结构及存储结构,并进行相应的运算。实验是该课程实践教学的重要环节,目的是培养学生根据求解问题的性质选择合理的数据结构,提高分析、设计、编程以及控制求解算法的时间、空间复杂性的能力。
基本要求
《数据结构》是计算机专业的专业核心基础课程,其先修课程有至少一门高级语言。数据结构课程将覆盖计算机软件实现中的大部分的基本算法,并具有一定的深度和广度,使学生对计算机常用基础算法有一个全盘的了解;通过此课的学习,学生应该具有针对所给的问题设计和实现高效算法的能力。通过上机实验,将使学生熟悉、掌握课堂教学中所学的大部分算法。
同时,上机实习是对学生在软件设计方面的综合训练,包括问题分析,总体结构设计,用户界面设计,程序设计基本技能和技巧等,以培养良好的编程风格和科学作风。通过理论联系实际,以最终提高学生动手操作的能力以及分析问题的能力。
实验项目设置
实验
序号 实验名称 试验
学时 试验要求 试验类型 每组人数 1 顺序表 2 必修 设计 1 2 单链表 2 必修 设计 1 3 栈 2 必修 设计 1 4 队列 2 必修 验证 1 5 二叉树的遍历 2 必修 验证 1 6 查找 2 必修 设计 1 7 排序 4 必修 设计 1 四、实验项目说明
实验一:顺序表
一、目的:
熟练掌握线性表的基本操作在顺序存储结构上的实现
二、要求:
掌握顺序表的建立、查找、插入、删除等基本操作。
三、示例程序:
#includestdio.h
#includestdlib.h
#define MAXSIZE 30
struct SqList
{
char datas[MAXSIZE];
int length;
};
typedef struct SqList SqList;
//建立顺序表L
void creat_Sq(SqList *L)
{
char x; int j;
//按要求建立顺序表
printf(按要求输入顺序表初始时的元素(切换用回车),以#结束:\n);
fflush(stdin);
scanf(%c,x);
j=0;
while( x!=#)
{
L-datas[j]=x;
L-length++; j++;
fflush(stdin);
scanf(%c,x);
}
}
//查找操作
int LocateElem_Sq(SqList *L, char x)
{ //在顺序线性表L中查找第1个值与x相等的元素,若找到,则返回其在L中的位序,否则返回0
int k;
k=1; //k的初值为第1个元素的位序
while(k=L-length L-datas[k-1]!=x) k++;
if(k=L-length)
return k;
else
return 0;
}
//求顺序表长度
int Get_length(SqList *L)
{
return L-length;
}
//插入操作
void ListInsert_Sq (SqList *L,int i,char e)
{//在顺序表L的第i个位置前插入一个新的元素e
****************
}
//删除操作
void ListDelete_Sq(SqList *L,int i)
{//在顺序表L中删除第i个数据元素
int k;
if((i1)||(iL-length)||(L-length==0))//出错处理,考虑算法的健壮性
printf(error); //i值不合法或表已空则出错
else{
for (k=i; kL-length; k++)//将第i+1至第n个元素逐一向前移一个位置
L-datas[k-1]=L-datas[k];
L-length=L-length-1; //将顺序表的长度减1
}
}
//输出顺序表
void PRINT(SqList *L)
{ int i;
printf(顺序表的当前值为:\n);
for(i=0;iL-length;i++)
printf(%c ,L-datas[i]);
printf(\
您可能关注的文档
最近下载
- JH100系列伺服控制器用户手册.PDF VIP
- 额济纳旗种植蜜瓜的气候条件分析-来源:现代农业科技(第2019009期)-安徽省农业科学院.pdf VIP
- 艾曲泊帕治疗难治性ITP病例分享.pptx VIP
- 集团三重一大事项决策管理办法.docx VIP
- 2025年蜀道投资集团有限责任公司人员招聘笔试备考题库.docx VIP
- DBJ14-073-2010 岩棉板外墙外保温系统应用技术规程.docx VIP
- YZP50液压修井转盘说明书.doc
- 气管切开患者护理课件.pptx VIP
- 高一物理 匀速圆周运动研究 典型例题精析.doc VIP
- 2024年全省交通综合执法职业技能竞赛理论知识考试题库(含答案).docx
文档评论(0)