数据结构实验报告-线性链表_第1页
数据结构实验报告-线性链表_第2页
数据结构实验报告-线性链表_第3页
数据结构实验报告-线性链表_第4页
数据结构实验报告-线性链表_第5页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

课程名称_数据结构_实验名称_线性链表的实现与应用_实验日期_2015.1.16_班级_名称_学校编号_设备编号_实验报告要求1 .实验目的2 .实验要求3 .实验步骤4 .程序列表5 .运行状况6 .流程图7 .实验体会实验目的:掌握线性表的连锁记忆结构设计和基本操作的实现。实验内容:1、采用本书第28页定义的线性表连锁存储结构,对本书的算法2.8、算法2.9、算法2.10、算法2.11以及输出线性表的算法进行编程来实现。 另外,对描述主函数实现的算法进行了测试。2 .采用线性表的链接存储结构,实现线性链接表的综合操作:设置线性链接表La和Lb,尝试设计算法,将La和Lb综合为新的线性链接表Lc线性链接表La和Lb的数据要素设为整数,所有值都按非降序排列,LC的数据要素值也按非降序排列进程列表:1.#include#include定义错误0#define NULL 0#define OK 1typedef int ElemType;typedef struct LNodeElemType data;结构节点*下一步;LNode、*LinkList;int get elem _ l (链接列表l,int i,ElemType e )装模作样int j=1;LinkList p=L-next;while(pjnext;j;以下称为if! p|ji )return ERROR;e=p -数据;return OK;以下称为int list insert _ l (链接列表l,int i,ElemType e) )int j=0;链接列表p=l,s;while(pjnext;j; 以下称为if! p|ji-1 )return ERROR;s=(link list ) malloc (sizeof (lnode ) )s -数据=e;s-next=p-next;p-next=s;return OK;以下称为int list delete _ l (链接列表l、int i和ElemType e )装模作样int j=0;链接列表p=l,q;while(p-nextjnext;j; 以下称为if! (p-next)ji-1 )return ERROR;q=p-next;p-next=q-next;e=q-data;free(q )return OK;以下称为void创建列表_ l (链接列表l,int n )装模作样int i;LinkList p,q;l=(link list ) malloc (sizeof (lnode ) )q=L;for(i=1; i=n; I )装模作样p=(link list ) malloc (sizeof (lnode ) )scanf(%d”,p-data );q-next=p;q=p;以下称为q-next=NULL;以下称为输出列表_ l (链接列表l )装模作样LinkList p=L-next;if(p=NULL )return ERROR;while(p!=NULL )printf(%d”,p-data );p=p-next;以下称为printf(n );return OK;以下称为void main ()装模作样ElemType i,e,a,n,x,y,dd;链接列表l;printf (元素数n:n );scanf(%d”,n );printf (请输入链表的%d元素:n ,n )创建列表_ l (l,n )printf (输出顺序表中的所有元素:n );OutputList_L(L )printf (请输入赋值的第I个元素:);scanf(%d”,I );GetElem_L(L,I,e )printf(e=%dn ,e );printf (插入元素的位置:);scanf(%d”,x );printf (插入的元素是: );scanf(%d”,a );printf (在序列表中的第%d个位置插入%dn ,x,a )列表插入_ l (l,x,a )printf (输出插入后序列表中的所有元素:n ) :OutputList_L(L )printf (删除元素的位置:);scanf(%d”,y );printf (删除序列表中第%d个位置的元素 n ,y );ListDelete_L(L,y,dd )printf (输出删除后序列表中的所有元素:n ) :OutputList_L(L )以下称为2.#include#include定义错误0#define NULL 0#define OK 1typedef int ElemType;typedef struct LNodeElemType data;结构节点*下一步;LNode、*LinkList;void创建列表_ l (链接列表l,int n )装模作样int i;LinkList p,q;l=(link list ) malloc (sizeof (lnode ) )q=L;for(i=1; i=n; I )装模作样p=(link list ) malloc (sizeof (lnode ) )scanf(%d”,p-data );q-next=p;q=p;以下称为q-next=NULL;以下称为输出列表_ l (链接列表l )装模作样LinkList p=L-next;if(p=NULL )return ERROR;while(p!=NULL )printf(%d”,p-data );p=p-next;以下称为printf(n );return OK;以下称为void merge list _ l (链接列表la、链接列表lb和链接列表LC )装模作样LinkList pa,pb,pc;pa=La-next;pb=Lb-next;Lc=pc=La;while(papb )装模作样if(pa-data=pb-data )装模作样pc-next=pa;pc=pa;pa=pa-next;以下称为elsepc-next=pb;pc=pb;pb=pb-next;以下称为以下称为pc-next=pa? pa:pb;free(Lb )以下称为void main ()装模作样int a,b;LinkList La,Lb,Lc=0;printf(la元素数量a:n );scanf(%d”,a );printf (请输入链表La的元素:n ) :创建列表_ l (la,a )printf(lb元素的数量b:n );scanf(%d”,b );printf (请输入链表Lb的元素:n ) :创建列表_ l (lb,b )printf (输出链表La的所有元素:n );输出列表_ l (l

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论