顺序存储结构线性表基本操作-纯C语言实现.doc

上传人:11****ws 文档编号:2254169 上传时间:2019-05-03 格式:DOC 页数:7 大小:37.50KB
下载 相关 举报
顺序存储结构线性表基本操作-纯C语言实现.doc_第1页
第1页 / 共7页
顺序存储结构线性表基本操作-纯C语言实现.doc_第2页
第2页 / 共7页
顺序存储结构线性表基本操作-纯C语言实现.doc_第3页
第3页 / 共7页
顺序存储结构线性表基本操作-纯C语言实现.doc_第4页
第4页 / 共7页
顺序存储结构线性表基本操作-纯C语言实现.doc_第5页
第5页 / 共7页
点击查看更多>>
资源描述

1、/ /- / 顺序存储结构线性表基本操作 纯 C 语言实现 / / a simple example of Sq_List by C language / / by wangweinoo1PG /- / #include #include /以下为函数运行结果状态代码 #define TRUE 1#define FALSE 0#define OK 1 #define ERROR 0 #define INFEASIBLE -1 #define OVERFLOW -2 #define LIST_INIT_SIZE 5 /线性表存储空间的初始分配量 #define LISTINCREMENT 1 /

2、线性表存储空间分配增量 typedef int Status; /函数类型,其值为为函数结果状态代码 typedef int ElemType; /假设数据元素为整型 typedef struct ElemType *elem; /存储空间基址 int length; /当前长度 int listsize; /当前分配的存储容量 Sqlist; /实现线性表的顺序存储结构的类型定义static Sqlist L;/为了引用方便,定义为全局变量static ElemType element;/函数名:InitList()/参数:SqList L/初始条件:无/功能:构造一个空线性表/返回值:存储

3、分配失败:OVERFLOW/ 存储分配成功:OK/Status InitList(Sqlist L)L.elem=(ElemType*)malloc(LIST_INIT_SIZE*sizeof(ElemType);if(L.elem=NULL)exit(OVERFLOW);elseL.length=0;L.listsize=LISTINCREMENT;return OK;/函数名:DestroyList()/参数:SqList L/初始条件:线性表 L 已存在/功能:销毁线性表/返回值:L.elem=NULL:ERROR/ L.elem!=NULL:OK/Status DestroyList(

4、Sqlist L)if(L.elem=NULL)return ERROR;elsefree(L.elem);return OK;/函数名:ClearList()/参数:SqList L/初始条件:线性表 L 已存在/功能:清空线性表/返回值:L.elem=NULL:ERROR/ L.elem!=NULL:OK/Status ClearList(Sqlist L)if(L.elem=NULL)exit(ERROR);int i;ElemType *p_elem=L.elem;for(i=0;iListLength(L) :OVERFLOW/ 1L.length)return OVERFLOW;f

5、or(j=1;j1for(j=1;j=1for(j=1;j(L.length+1)return ERROR;if(L.length=L.listsize)newbase=(ElemType*)realloc(L.elem,L.listsize+LISTINCREMENT*sizeof(ElemType);if(newbase=NULL)exit(OVERFLOW);L.elem=newbase;L.listsize+=LISTINCREMENT;for(p=p=q;-p)*(p+1)=*p;*q=e;+L.length;return OK;/函数名:ListDelete()/参数:SqList L,int i,Elemtype e/初始条件:线性表 L 已存在,1L.length)return ERROR;ElemType *p,*q;p=e=*p;q=L.elem+L.length-1;for(+p;p=q;+p)*(p-1)=*p;-L.length;return OK;

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 实用文档资料库 > 策划方案

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。