1 / 12
文档名称:

数据结构c,,版,实验报告.docx

格式:docx   大小:18KB   页数:12
下载后只包含 1 个 DOCX 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

数据结构c,,版,实验报告.docx

上传人:bai1968104 2019/2/21 文件大小:18 KB

下载得到文件列表

数据结构c,,版,实验报告.docx

文档介绍

文档介绍:数据结构c,,版,实验报告《数据结构》实验报告专业班级142 姓名李斌学号学期指导老师成绩: 教师评语: 学号:姓名:李斌所在系:惠普测试班级:142实验名称:线性结构基本算法的实现实验日期实验指导教师刘勇实验机房------------------------------------------------------------------------------------------------------ : (1)掌握线性表顺序存储结构的基本操作:插入、删除、查找; (2)掌握线性表链式结构的基本操作:插入、删除、合并等运算; 掌握栈和队列基本运算的算法; 掌握稀疏矩阵的压缩存储的算法。 : 实现顺序表的创建、插入、删除和查找的操作; 实现单链表插入、删除、合并的操作; 实现2个有序线性表的合并; 利用顺序栈实现括号匹配的算法; 实现顺序队列各种基本运算的算法; 实现链栈各种基本运算的算法; 实现链队列各种基本运算的算法; 实现稀疏矩阵压缩存储的算法。 : 1、顺序表的插入和删除 2、有序单链表的合并 3、数制转换的算法实现 1. //顺序表的插入和删除#include //#include #include #defineLIST_INIT_SIZE100 #defineLISTINCREMENT10 #URE1 #defineFALSE0 #defineOK1 #defineERROR0 #defineINFEASIBLE-1 #defineOVERFLOW-2 typedefintElemType; typedefintStatus; typedefstruct { ElemType*elem; intlength; intlistsize; }SqList; StatusInitList_Sq(SqList*L) { //printf("test~~\n"); L->elem=(ElemType*)malloc(LIST_INIT_SIZE*sizeof(ElemType)); if(!L->elem)returnOVERFLOW; L->length=0; L->listsize=LIST_INIT_SIZE; returnOK; } StatusCreatList_Sq(SqList*L,intn) { inti; L->length=n; //printf("请输入%d个整数:",n);//3 for(i=0;ielem[i]); } returnOK; } voidTraverList_Sq(SqList*L) { inti; printf("顺序表的长度为:%d\n",L->length); printf("顺序表中的元素依次为:"); for(i=0;ilength;i++) { printf("%5d",L->elem[i]); } printf("\n"); } intListInsert_Sq(SqList*L,inti,inte) { int*newbase,*q,*p; if(iL->length+1) { printf("由于插入位置不合法导致插入操作失败\n"); returnERROR; } else { if(L->length>=L->listsize) { newbase=(int*)realloc(L->elem,(L->listsize+LISTINCREMENT)*sizeof(int));if(!newbase)returnOVERFLOW; L->elem=newbase; L->length=+LISTINCREMENT; } q=&(L->elem[i-1]); for(p=&L->elem[L->length];p>=q;p--) *(p+1)=*p; *q=e; ++L->length; returnOK; } } intDeleteList_Sq(SqList*L,inti,inte) { intx,*q,*p; if(iL->length) { printf("由于删除位置不合法无法进行删除\n"); returnERROR; } elseif(L->length==0) { printf("由于是空表无法删除\n"); returnOVERFLOW; } else { q=&(L->elem[i-1]); e=L->elem[i-1]; 《数据结构》实验信息工程学院 XX 预备实验C语言的函数数组指针结构体知识一、实验目的 1、复习C语言中函数、数组、指针、结构体与共用体等的概念。2、熟悉利用C语言进行程序设计的一般方法。二、实验预习说明以下C语言中的概念1、函数: 2、数组: 3、指针: 4、结构体 5、共用