欢迎来到天天文库
浏览记录
ID:51020008
大小:77.64 KB
页数:9页
时间:2020-03-17
《数据机构实验指导书.doc》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、数据机构实验指导书 北京邮电大学远程教育信息管理与信息系统专业《数据结构》实验指导书实验一线性表的插入和删除 一、实验目的 1、掌握使用TurboPascal上机调试线性表的基本方法; 2、掌握线性表的基本操作插入、删除、查找以及线性表合并等运算在顺序存储结构和链接存储结构上的运算。 二、实验要求 1、认真阅读和掌握本实验的程序。 2、上机运行本程序。 3、保存和打印出程序的运行结果,并结合程序进行分析。 4、按照你对线性表的操作需要,重新改写主程序并运行,打印出文件清单和运行结果 三、注意事项在磁盘上创建一个目录,专
2、门用于存储数据结构实验的程序。 四、实验内容程序1线性表基本操作的实现这个程序中演示了顺序表的创建、插入、删除和查找。 程序如下PROGRAMseqlist(input,output);{线性表可能达到的最大长度}CONSTmaxlen=1024;TYPEelemtp=integer;{线性表的顺序存储结构}TYPEseqlisttp=RECORD{用一维数组来描述线性表的顺序存储结构}elem:ARRAY[1..maxlen]OFelemtp;{定义子界类型last,它的取值范围是0到maxlen}last:0..maxlen{线性
3、表长度}END;{初始化线性表}PROCEDUREinitlist(VARv:seqlisttp;ml:integer);BEGINv.last:=0;END;{向线性表的第i个元素之前插入一个元素x}PROCEDUREinsertlist(VARv:seqlisttp;i:integer;b:elemtp);VARj:integer;BEGINIF(i<1)OR(i>v.last+1)THENwriteln('error!')ELSEIFv.last>=maxlenTHENwriteln('overflow')ELSEBEGINFORj
4、:=v.lastDOWNTOiDOv.elem[j+1]:=v.elem[j];v.elem[i]:=b;v.last:=v.last+1;END;END;{从线性表中删除第i个位置的元素}PROCEDUREdeletelist(VARv:seqlisttp;i:integer);VARj:integer;BEGINIF(i<1)OR(i>v.last+1)THENwriteln('error!')ELSEIFv.last>=maxlenTHENwriteln('overflow')ELSEBEGINFORj:=i+1TOv.lastDO
5、v.elem[j-1]:=v.elem[j];v.last:=v.last-1;END;END;{从线性表中查找元素}FUNCTIONfindlist(v:seqlisttp;x:elemtp):integer;VARi:integer;BEGINi:=1;WHILE(i<=v.last)AND(v.elem[i]<>x)DOi:=i+1;IFi<=v.lastTHENfindlist:=iELSEfindlist:=0;END;{遍历线性表}PROCEDUREtraverlist(v:seqlisttp);VARi:integer;BE
6、GINFORi:=1TOv.lastDOBEGINwriteln(v.elem[i]);END;END;{建立线性表}VARa:seqlisttp;i,k:integer;x:elemtp;BEGIN{初始化线性表}InitList(a,maxlen);{相线性表a的末尾插入5个元素}writeln('Input5integers:');FORi:=1TO5DOBEGINreadln(x);insertlist(a,a.last+1,x);END;{遍历线性表a}traverlist(a);{删除线性表的第三个元素}deletelist(
7、a,3);{遍历线性表a}traverlist(a);{在线性表中查找元素}writeln('Inputtheintegertobefound:');readln(x);k:=findlist(a,x);IFk>0THENwriteln('Thelocationoffirst',x,'is',k)ELSEwriteln('notfound');writeln(a.last);END.实验二单链表操作 一、实验目的1.掌握握单链表的基本操作插入、删除、查找等运算。 二、实验要求1.认真阅读和掌握本实验的程序。 2.上机运行本程序。
8、3.保存和打印出程序的运行结果,并结合程序进行分析。 4.按照你对单链表的操作需要,重新改写主程序并运行,打印出文件清单和运行结果 三、实验内容程序1单链表基本操作的实现这个程序中演示了单
此文档下载收益归作者所有