下载此文档

线性表逆置(顺序表)实验报告.doc


文档分类:IT计算机 | 页数:约11页 举报非法文档有奖
1/11
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/11 下载此文档
文档列表 文档介绍
实验一:线性表逆置(顺序表)实验报告(一)问题的描述:实现顺序表的逆置算法(二)数据结构的设计:顺序表是线性表的顺序存储形式,因此设计如下数据类型表示线性表:typedefstruct{ElemType*elem;/*存储空间基址*/intlength;/*当前长度*/intlistsize;/*当前分配的存储容量(以sizeof(ElemType)为单位)*/}SqList;(三)函数功能、参数说明及概要设计:(SqList*L)功能说明:实现顺序表L的初始化算法设计:(SqListL)功能说明:返回顺序表L长度算法设计:(SqList*L,inti,ElemTypee)功能说明:将元素e插入到顺序表L中的第i个节点算法设计:判断顺序表是否已满,已满则加空间,未满则继续,将元素e插入到第i个元素之前,(SqListL,void(*vi)(ElemType*))功能说明:依次对L的每个数据元素调用函数vi()算法设计:依次对L的每个数据元素调用函数vi()(SqList*L)功能说明:实现顺序表L的逆置算法设计:用for循环将顺序表L中的第i个元素依次与第(i+length)(ElemType*c)功能说明:打印元素c算法设计:打印元素c2.(四)具体程序的实现/*程序名*/#include<>#include<>#include<>/*malloc()等*/#include<>/*INT_MAX等*/#include<>/*EOF(=^Z或F6),NULL*/#include<>/*atoi()*/#include<>/*eof()*/#include<>/*floor(),ceil(),abs()*/#include<>/*exit()*//*函数结果状态代码*/#RUE1#defineFALSE0#defineOK1#defineERROR0#defineINFEASIBLE-1/*#defineOVERFLOW-,故去掉此行*/typedefintStatus;/*Status是函数的类型,其值是函数结果状态代码,如OK等*/typedefintBoolean;/*Boolean是布尔类型,其值是TRUE或FALSE*/typedefintElemType;/*线性表的动态分配顺序存储结构*/#defineLIST_INIT_SIZE10      //线性表存储空间的初始分配量#defineLISTINCREMENT2      //线性表存储空间的分配增量typedefstruct{ElemType*elem;          //存储空间基址intlength;            //当前长度intlistsize;          //当前分配的存储容量(以sizeof(ElemType)为单位)}SqList;/*顺序表示的线性表的基本操作*/StatusInitList(SqList*L)/**/{/*操作结果:构造一个空的顺序线性表*/(*L).elem=(ElemType*)malloc(LIST_INIT_SIZE*sizeof(ElemType));if(!(*L).elem)exit(OVERFLOW);/*存储分配失败*/(*L).length=0;/*空表长度为0*/(*L).listsize=LIST_INIT_SIZE;/*初始存储容量*/returnOK;}StatusDestroyList(SqList*L){/*初始条件:顺序线性表L已存在。操作结果:销毁顺序线性表L*/free((*L).elem);(*L).elem=NULL;(*L).length=0;(*L).listsize=0;returnOK;}intListLength(SqListL){                  //初始条件:顺序线性表L已存在。操作结果:;}StatusListInsert(SqList*L,inti,ElemTypee)//{//初始条件:顺序线性表L已存在,1≤i≤ListLength(L)+1//操

线性表逆置(顺序表)实验报告 来自淘豆网m.daumloan.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数11
  • 收藏数0 收藏
  • 顶次数0
  • 上传人wxc6688
  • 文件大小26 KB
  • 时间2019-11-07
最近更新