数据结构线性表顺序表源代码C
《数据结构线性表顺序表源代码C》由会员分享,可在线阅读,更多相关《数据结构线性表顺序表源代码C(4页珍藏版)》请在装配图网上搜索。
1、#define MAXSIZE 100 /MAXSIZE 为线性表可能的最大长度 #include #include typedef int ElemType;typedef struct ElemType dataMAXSIZE;int length; / length为线性表的长度 SqList;SqList l;/线性表定义 void InitList(SqList &L) /初始化操作,将线性表L置空 L.length = 0;/g给顺序表长度初始化为0void CreatSqlist(SqList &L,int n) /建立一个顺序存储的线性表 printf(请输入节点); int
2、i;for(i=0;in;i+)scanf(%d,&L.datai);/读取元素L.length=n;/表的长度就是元素的个数fflush(stdin); /清除一个流void Output(SqList &L) /输出顺序表L int i;for(i=0;iL.length;i+)printf(%5d,L.datai); /每个数据占5列printf(n);int DELETE(SqList &L,int i)/删除一个元素int j;if(iL.length)/删除位置 错误printf(error);return 0;elsefor(j=i;j=MAXSIZE-1)printf(over
3、 flow);return 1;/上溢else if(iL.length+1)printf(error);return 1;else for(j=L.length;j=i-1;j-)L.dataj+1=L.dataj;/元素位置依次后移一位L.datai-1=x;/在第i个节点上插入xL.length=L.length+1;/插入之后长度加1return 0;int GET(SqList &L,int i)/从表中获得一个元素int m;if(iL.length)printf(overflow);return 1;else if(i=1)&(i=L.length)m=L.datai-1;pri
4、ntf(%d ,m);return 0;int chazhao(SqList &L,int x)/从表中查找元素int i,k;printf(n请输入你要查找的元素 x=?);scanf(%d,&x);for(i=0;i=(L.length+1);i+)/从第一个元素开始查找,与X比较。if(x=L.datai)printf(要查找的元素%d 位于 %d 上nn,x,i+1);k=0;break;if(k!=0) printf(%d 不在表中,x);return 0;int PUEGE(SqList &L)/ 删除线性表中重复出现的多余节点int i=1,j,x,y;while(iL.leng
5、th)x=L.datai;j=i+1; /*for(j=i+1;jL.length;j+)*/while(jL.length)y=L.dataj;if(x=y)DELETE(l,j);else j+;i+;return 0;int main()int n,i,k,x;InitList(l);printf(请输入线性表的长度 );scanf(%d,&n);CreatSqlist(l,n);Output(l); printf(请输入你要删除元素的位置=?);scanf(%d,&k);DELETE(l,k);Output(l);printf(请输入想要 插入的数和位置x,i=?);scanf(%d,%d,&x,&i);INSERT(l,x,i);Output(l);printf(请输入你要取的数在的节点位置);scanf(%d,&i);GET(l,i);chazhao(l,x);PUEGE(l);return 0;
- 温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。