



全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
#include#define MaxLen 50typedef int elemtype;typedef elemtype sqlistMaxLen;int create(sqlist A)int i,n;cout 创建一个顺序表 endl;cout n;for (i=0;in;i+)cout 输入第 i+1 Ai;return n;#include using namespace std;#define LIST_INIT_SIZE 100/线性表存储空间的初始分配量 #define LISTINCREMENT 10/线性表存储空间的分配增量typedef int ElemType;typedef int Status;#define OK 1#define OVERFLOW -1#define ERROR -2typedef struct/用户自定义结构体SqList ElemType *elem;/指针指向存储空间基址 int length; int listsize;SqList;/线性表初始化Status Initlist_Sq(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; /初始存储容量 return OK;/Put 操作Status Put(SqList &L,int n) cout向线性表中输入这n个数据:endl; for(int i=0;iL.elemi; L.length =L.length +n; return OK; /Out 操作Status Out(SqList &L,int n) for(int i=0;in;i+) coutL.elemi ; coutendl; return OK;/Insert操作int *p,*q,*e;Status ListInsert_Sq(SqList &L,int i,ElemType e) ElemType *newbase; if(iL.length+1) return ERROR;/i的值不合法 if(L.length =L.listsize) /存储空间已满,增加分配 newbase=(ElemType*)realloc(L.elem, (L.listsize+LISTINCREMENT)*sizeof(ElemType); if(!newbase)exit(OVERFLOW);/重新分配失败 L.elem=newbase; L.listsize+=LISTINCREMENT;/增加分配容量q=&(L.elemi-1);/q为插入地址for(p=&(L.elemL.length-1);p=q;-p) *(p+1)=*p;/插入元素后移*q=e;+L.length;return OK;/Delete操作Status ListDelete_Sq(SqList &L,int i,ElemType &e)if(i=L.length) return ERROR;p=&(L.elemi-1);e=*p;q=L.elem+L.length-1;for (+p;p=q;+p) *(p-1)=*p;-L.length;return OK;/Search操作int LocateElem_Sq(SqList L,ElemType f) int i=1; p=L.elem; while(i=L.length)&!(*p+)=f) i+; if(i=L.length) return i; else return 0;/主函数int main() int n,i,k,e,j,f; SqList La; Initlist_Sq(La); cout线性表中的数据个数n(n=100):n; Put(La,n); cout该线性表为:endl; Out(La,n); cout对线性表进行插入操作,请依次输入插入位置i(第i个数据之前),插入数据k:ik; ListInsert_Sq(La,i,k); cout插入后的线性表为:endl; Out(La,La.length); cout进行删除操作,请输入删除位置j:j; ListDelete_Sq(La,j,e); cout删除之后的线性表:endl; Out(La,La.len
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 造纸和纸制品行业直播电商战略研究报告
- 公司建筑入股合同样本
- 2025年-四川省安全员《B证》考试题库及答案
- 农民摆摊经营合同样本
- 农村建房拆迁合同样本
- 出租创业花园合同样本
- 个人房子赠与合同样本
- 关于高空清洗合同样本
- 书采购配送合同样本
- 修车雇佣合同样本
- 我国中学导师制的历程、现状及问题分析
- 安全带检测报告(共8页)
- 逆流开式冷却塔计算(精品ZTQ版)
- 公司erp项目激励制度
- 出厂检验报告B
- Excel函数和公式练习
- 六年级下册数学试题-半期学情检测西师大版含答案
- 某核电项目机械贯穿件安装施工管理技术研究
- JGJ_T231-2021建筑施工承插型盘扣式钢管脚手架安全技术标准(高清-最新版)
- 基于单片机的接触器控制器设计
- 建筑幕墙设计说明(最新规范)
评论
0/150
提交评论