欢迎来到天天文库
浏览记录
ID:53038403
大小:330.01 KB
页数:19页
时间:2020-03-31
《实验1-2顺序表和链表基本操作_参考答案.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、实验1、2:线性表的应用参考代码一、实验预备知识1.复习C中编写函数的相关内容。2.复习如何用主函数将多个函数连在一起构成一个C完整程序。二、实验目的1.掌握线性表的顺序和链式存储结构2.熟练运用线性表在顺序存储方式下的初始化、创建、输出、插入和删除运算3.熟练运用线性表在链式存储方式下的创建、输出、插入和删除运算三、实验要求1.编写初始化并创建线性表和输出线性表的算法。2.编写对线性表插入和删除运算算法,要判断位置的合法性和溢出问题。3.编写有序表的插入和删除运算算法。4.编写一个主函数,将上面函数连在一起,构成一个完整的
2、程序。5.将实验源程序调试并运行,写出输入、输出结果,并对结果进行分析。四、实验内容顺序表实验内容:1.给定的线性表为L=(12,25,7,42,19,38),元素由键盘输入。2.初始化并建立顺序表。(开辟的存储空间大小为8)3.编写顺序表输出算法。4.依次插入3、21、15、99四个数,分别插入在第1、8、4和12位置,每插入一次都要输出一次顺序表。5.删除第1,第9和第12个位置上的元素,每删除一个元素都要输出一次顺序表。6.编写一个排序算法,对线性表中元素从小到大排列。7.向有序表分别插入20和50,插入后表仍然有序。
3、(修改开辟的存储空间大小为15)单链表实验内容:1.给定的线性表为L=(12,25,7,42,19,38),元素由键盘输入。2.建立一个带表头结点的单链表(前插入法和尾插入法均可)。3.编写单链表输出算法。4.依次插入3、21、15、99四个数,分别插入在第1、8、4和12位置,每插入一次都要输出一次单链表。5.删除第1,第9和第12个位置上的元素,每删除一个元素都要输出一次单链表。6.编写一个排序算法,对链表中元素从小到大排列。7.向有序链表分别插入20和50,插入后表仍然有序。五、实验结果顺序表源程序:#include<
4、iostream>usingnamespacestd;constintMAXSIZE=8;//做有序表插入操作时,将8改为15typedefintDataType;第19页typedefstruct{DataTypedata[MAXSIZE];intlength;}SeqList;voidInit_SeqList(SeqList&L);//创建空顺序表算法voidShow_SeqList(SeqListL);//顺序表输出算法voidCreate_SeqList(SeqList&L);//顺序表创建算法intInsert_S
5、eqList(SeqList&L,DataTypex,inti);//顺序表的插入算法intDelete_SeqList(SeqList&L,inti);//顺序表的删除算法intLocate_SeqList(SeqListL,DataTypex);//顺序表的按值查找算法voidSort_SeqList(SeqList&L);//顺序表的排序算法intInsert_SeqList_sort(SeqList&L,DataTypex);//有序表的插入算法voidMerge(SeqListLA,SeqListLB,SeqLis
6、t&LC);//两个有序顺序表的合并算法voidmenu();//菜单算法voidmain(){menu();}voidmenu()//菜单算法{SeqListL;Init_SeqList(L);intm;while(1){cout<<"根据所做操作选择以下数字序号:"<7、ntn,i,x;cin>>n;switch(n){case1:{Create_SeqList(L);break;}case2:{cout<<"请输入插入位置:";cin>>i;第19页cout<>x;cout<8、<<"请输入删除位置:";cin>>i;cout<
7、ntn,i,x;cin>>n;switch(n){case1:{Create_SeqList(L);break;}case2:{cout<<"请输入插入位置:";cin>>i;第19页cout<>x;cout<8、<<"请输入删除位置:";cin>>i;cout<
8、<<"请输入删除位置:";cin>>i;cout<
此文档下载收益归作者所有