资源描述:
《算法与数据结构实验报告》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、金陵科技学院实验报告学生实验报告册课程名称:算法与数据结构金陵科技学院实验报告实验项目名称:顺序表实验学时:2同组学生姓名:实验地点:工科楼A205实验日期:2013年10月16日实验成绩:批改教师:批改时间:金陵科技学院实验报告实验1顺序表一、实验目的和要求掌握顺序表的定位、插入、删除等操作。二、实验仪器和设备TurboC2.0三、实验内容与过程(含程序清单及流程图)1、必做题(1)编写程序建立一个顺序表,并逐个输出顺序表中所有数据元素的值。编写主函数测试结果。(2)编写顺序表定位操作子函数,在顺序表中查找是否存在数据元素x。如果存在,返回顺
2、序表中和x值相等的第1个数据元素的序号(序号从0开始编号);如果不存在,返回-1。编写主函数测试结果。(3)在递增有序的顺序表中插入一个新结点x,保持顺序表的有序性。解题思路:首先查找插入的位置,再移位,最后进行插入操作;从第一个元素开始找到第一个大于该新结点值x的元素位置i即为插入位置;然后将从表尾开始依次将元素后移一个位置直至元素i;最后将新结点x插入到i位置。(4)删除顺序表中所有等于X的数据元素。2、选做题(5)已知两个顺序表A和B按元素值递增有序排列,要求写一算法实现将A和B归并成一个按元素值递减有序排列的顺序表(允许表中含有值相同的
3、元素)。程序清单:1、#definemaxsize100typedefstruct{intdata[maxsize];intlast;}sequenlist;main(){inti;sequenlistl={{2,5,6,8,2,8,4,3},7};printf("Thelistis:");金陵科技学院实验报告for(i=0;i<=l.last;i++)printf("%2d",l.data[i]);}2、#definemaxsize100typedefstruct{intdata[maxsize];intlast;}sequenlist;
4、main(){intx,i,s=-1;sequenlistl={{2,5,6,7,9,8,4,3},7};printf("Thelistis:");for(i=0;i<=l.last;i++)printf("%2d",l.data[i]);printf("Pleaseinputthenumber:");scanf("%d",&x);for(i=0;i<=l.last;i++)if(l.data[i]==x){s=i;break;}printf("%d",s);}3、#definemaxsize100typedefstruct{intda
5、ta[maxsize];intlast;}sequenlist;main(){inti,x,j;sequenlistl={{1,3,5,6,7,9},5};printf("Thelistis:");for(i=0;i<=l.last;i++)printf("%2d",l.data[i]);printf("Inputtheinsertnumber:");金陵科技学院实验报告scanf("%d",&x);for(i=1;i<=l.last;i++)if(l.data[i-1]>x)break;for(j=l.last;j>=i-1;j--)
6、l.data[j+1]=l.data[j];l.data[i-1]=x;l.last++;printf("thelistafterinsertionis:");for(j=0;j<=l.last;j++)printf("%3d",l.data[j]);}4、#definemaxsize100typedefstruct{intdata[maxsize];intlast;}sequenlist;main(){inti,j,x=0,k=0;sequenlistL={{1,3,5,7,2,4,6,8,2,9},9};printf("Thelis
7、tis:");for(i=0;i<=L.last;i++)printf("%3d",L.data[i]);printf("Pleaseinputanumberx:");scanf("%d",&x);for(i=1;i<=L.last+1;i++)if(L.data[i-1]==x){for(j=i;j<=L.last+1;j++)L.data[j-1]=L.data[j];L.last--;i--;k=1;}if(k==1){printf("Thelistafterdeletionis:");for(j=0;j<=L.last;j++)
8、printf("%3d",L.data[j]);}elseprintf("Notfound!");}金陵科技学院实验报告四、实验结果与分析(程序运