- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
链式线性表程序
#includestdio.h
#includestdlib.h
#define OK 1
#define ERROR 0
#define OVERFLOW -2
typedef int ElemType;
typedef int Status;
typedef struct Lnode{
ElemType data;
struct Lnode *next;
}Lnode, *Linklist;
void Creatlist(Linklist L,int n){
Lnode *p;
int i;
L=(Linklist)malloc(sizeof(Lnode));
L-next=NULL;
for(i=n;i0;i--)
{
p=(Linklist)malloc(sizeof(Lnode));
scanf(%d,p-data);
p-next=L-next;
L-next=p;
}
}
void CCreatlist(Linklist L,int n){
Linklist q,r;
int i;
L=(Linklist)malloc(sizeof(Lnode));
L-next=NULL;
q=L;
for(i=n;i0;i--){
r=(Linklist)malloc(sizeof(Lnode));
scanf(%d,r-data);
r-next=q-next;
q-next=r;
q=r;
}
}
void Displist(Linklist L){
Linklist p;
int l=0;
p=L-next;
while(p){
printf(%5d,p-data);
p=p-next;
l++;
}
printf(\n\n);
printf(请输出链式线性表L的长度:);
printf(%d,l);
}
Status Getlist(Linklist L,int i){
Linklist q;
int j=1,e;
q=L-next;
while(qji){
q=q-next;
j++;
}
if(!q||ji) return ERROR;
e=q-data;
printf(%d,e);
return OK;
}
Status ListInsert(Linklist L,int i,int m){
Linklist r,s;
int j=0;
r=L;
while(rji-1){
r=r-next;
j++;
}
if(!r||ji-1) return ERROR;
s=(Linklist)malloc(sizeof(Lnode));
s-data=m;
s-next=r-next;
r-next=s;
return OK;
}
Status ListDelete(Linklist L,int i){
Linklist q,r;
int j=0,m;
q=L;
while(qji-1){
q=q-next;
j++;
}
if(!(q-next)||ji-1) return ERROR;
r=q-next;
q-next=r-next;
m=r-data;
printf(\n);
printf(输出被删除的元素m:);
printf(%d,m);
free(r);
return OK;
}
void Mergelist(Linklist L,Linklist La){
Linklist pa,pc,Lc;
Lnode *q;
q=L-next;
pa=La-next;
pc=Lc=L;
while(qpa){
if(q-data=pa-data){
pc-next=q;
pc=q;
q=q-next;
}
else
{
pc-next=pa;
pc=pa;
pa=pa-next;
}
}
pc-next=q?q:pa;
free(La);
}
void main()
{
Linklist L,La;
int i,j,k,e;
// printf(利用尾插法建立链表L:);
// CCreatlist(L,5);
// printf(\n);
printf(利用头插法建立链表L:);
Creatlist (L,5);
printf(\n);
printf(输出线性链表L:);
Displist(L);
printf(\n\n);
printf(输出线性表L中的第三个元素:);
您可能关注的文档
最近下载
- 深静脉血栓诊断和治疗指南(2024版).pptx VIP
- 体育概论 第三版 杨文轩 陈琦 全国普通高等学校体育专业类基础课程教材-第二章 体育功能.ppt VIP
- 焊接工艺卡(焊接工艺指导书).doc VIP
- 人教版PEP四年级上册英语第二单元测试卷(含答案详解)2套.docx VIP
- 第15课《红红火火中国年》第2课时 越过越好中国年 教案设计 2025道德与法治二年级上册.docx
- 市政道路给水工程专项施工方案.doc VIP
- 土力学与基础工程.ppt VIP
- 2025年拍卖从业人员资格练习题测练习题.docx VIP
- 六年级数学求比值和化简比对比练习.doc VIP
- 柴油加氢改质装置培训.pptx VIP
文档评论(0)