链式存储结构的基本操作.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
链式存储结构的基本操作

广州大学学生实验报告 开课学院及实验室:计算机科学与工程实验室 2011年 月 日 学院 计算机科学与教育软件学院 年级、专业、班 计机094 姓名 潘永航 学号 0923010089 实验课程名称 数据结构 成绩 实验项目名称 实验一 链式存储结构的基本操作 指导老师 一、实验目的 掌握的定义及操作#includeiostream #includemalloc.h using namespace std; typedef struct node { int data; struct node *link; }LNode,*LinkList; LinkList insert(LinkList list) //新建一个链表或插入新元素 { int item,n; LinkList p,q,r; //list第一个结点指针 couthow many data do you want to insert:n=; cin n; for(int i=0;in;i++) { coutdata[i]=; cinitem; //输入储存的数据 p=(LinkList)malloc(sizeof(LNode)); //申请一个新的结点 p-data=item; //将数据放入结点的数据域 p-link=NULL; //链尾结点指针域置空 if(list==NULL) { list=p; } else { if(itemlist-data) //若a小于第一个链接点 { p-link=list; //将新的链接点插在链表最前面 list=p; //list指向被插入的新结点 } else { q=list; while(q!=NULL item=q-data) //寻找插入位置 { r=q; //r指针总是指向当前链接点的直接前驱结点 q=q-link; } p-link=q; r-link=p; //将新的链结点插在q指示的链结点后面 } } } return (list); } LinkList deleteline(LinkList list,int a) //删除链表中数据域值为item的所有连接点 { LinkList p,q=list; p=list-link; while(p!=NULL) { if(p-data==a) { q-link=p-link; free(p); p=q-link; } else { q=p; p=p-link; } } if(list-data==a) { q=list; list=list-link; free(q); } return(list); } LinkList overturnline(LinkList list) //链表翻转 { LinkList p,q=NULL,r; p=list; while(p!=NULL) { r=q; q=p; p=p-link; q-link=r; } list=q; return (list); } LinkList combine(LinkList listA,LinkList listB) //将两个按值有序链接的非空线性链表合并为一个 { LinkList listC,p=listA,q=listB,r; if(listA-data=listB-data) { listC=listA; r=listA; p=listA-link; } else { listC=listB; r=listB; q=listB-link; } while(p!=NULL q!=NULL) { if(p-data=q-data) { r-link=p; r=p; p=p-link; } else { r-link=q; r=q; q=q-link; } } r-link=p?p:q; return (listC); } int li

文档评论(0)

aicencen + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档