数据结构实训报告.

上传人:最**** 文档编号:116744698 上传时间:2019-11-17 格式:DOC 页数:37 大小:358.50KB
返回 下载 相关 举报
数据结构实训报告._第1页
第1页 / 共37页
数据结构实训报告._第2页
第2页 / 共37页
数据结构实训报告._第3页
第3页 / 共37页
数据结构实训报告._第4页
第4页 / 共37页
数据结构实训报告._第5页
第5页 / 共37页
点击查看更多>>
资源描述

《数据结构实训报告.》由会员分享,可在线阅读,更多相关《数据结构实训报告.(37页珍藏版)》请在金锄头文库上搜索。

1、北京联合大学实训报告课程(项目)名称: 数据结构 学 院: 专 业:班 级: 学 号: 姓 名: 成 绩: 2012年6月21日数据结构实训任务一一、任务与目的: 1、用顺序表表示两个无序集合A、B,实现集合的如下操作,求两个集合的并集、交集、差集。2、用顺序表表示两个集合A、B(集合A、B都是有序递增的情况)实现集合的如下操作,求两个集合的并集、交集、差集。3、用带头单链表存储结构表示两个无序集合A、B,实现集合的如下操作,求两个集合的并集、交集、差集。4、用带头单链表存储结构表示两个集合A、B(集合A、B都是有序递增的情况),实现集合的如下操作,求两个集合的并集、交集、差集。5、杀人游戏

2、N个人坐成一圈玩杀人游戏,按顺时针编号 1 2 3 N。从1号开始顺时针开始数到第m号就杀掉第一个人,被杀掉的人要退出游戏。 如果数到了编号的末尾,接着数开头的编号。 重复,直至杀掉一半人时,游戏结束,聪明的你能告诉我活到最后的幸存者最初的编号是多少吗? 输入数据:N、M ;输出数据:幸存者的编号 分析该程序,如果N=20,M=2,10。聪明的你应选择的编号是多少,(提示,计算出M分别等于1到10的情况下,那些编号生存概率较大)。给出实验结果6、作业抽查问题:有35个学生的班级,由于某种原因不能够做到全部检查作业,现在希望每次抽查10名学生,希望能够随机抽查,并能够有记忆,即希望抽查过的学生,

3、下次抽查的概率有所减小,但避免不被抽查。设计一个算法实现该功能,给出你的解释。1. void BingSet(SqList A, SqList B,SqList &C)/求并集int i,j;int flag=0;C.length=0;for(i=0;iA.length;i+)C.elemi=A.elemi;for(j=0;jB.length;j+)flag=LocateElem_Sq(A, B.elemj);if(flag=0)C.elemi=B.elemj;i+;C.length=i;void JiaoSet(SqList A, SqList B,SqList &C)/求交集int i,j

4、;int flag=0;C.length=0;i=0;for(j=0;jB.length;j+)flag=LocateElem_Sq(A, B.elemj);if(flag!=0)C.elemi=B.elemj;i+;C.length=i;void ChaSet(SqList A, SqList B,SqList &C)/求差集int i,j,k;int flag=0;C.length=0;k=0;for(i=0;iA.length;i+)flag=LocateElem_Sq(B,A.elemi);if(flag=0)C.elemk=A.elemi;k+;C.length=k;运行结果:2.

5、void BingSet(SqList A, SqList B,SqList &C)/求并集int i,j,k;k=0;C.length=0;for(i=0,j=0;(iA.length)&(jB.length);)if(A.elemiB.elemj)C.elemk=A.elemi;k+;i+;elseif(A.elemi=B.elemj)C.elemk=A.elemi;k+;i+;j+;elseC.elemk=B.elemj;k+;j+;if(iA.length)for(;iA.length;i+)C.elemk=A.elemi;k+;i+;if(jB.length)for(;jB.leng

6、th;j+)C.elemk=B.elemj;k+;j+;C.length=k;void JiaoSet(SqList A, SqList B,SqList &C)/求交集int i,j,k;k=0;C.length=0;for(i=0,j=0;(iA.length)&(jB.length);)if(A.elemiB.elemj)i+;elseif(A.elemi=B.elemj)C.elemk=A.elemi;k+;i+;j+;elsej+;C.length=k;void ChaSet(SqList A, SqList B,SqList &C)/求差集 int i,j,k;int flag=0

7、;k=0;C.length=0;for(i=0,j=0;(iA.length)&(jB.length);)if(A.elemiB.elemj)C.elemk=A.elemi;i+;k+;elseif(A.elemi=B.elemj)i+;j+;elsej+;if(iA.length)for(;iA.length;i+)C.elemk=A.elemi;k+;i+;C.length=k;void InserOrder_Sq(SqList &L,ElemType e)int i,j;for(i=0;i=e)break;for(j=L.length-1;j=i;j-)L.elemj+1=L.elemj

8、;L.elemi=e;L.length+;运行结果:3. void bing(link &p,link &h,link &q) /求并集link l,s,m;int j=0,i=0;q=new LNode;q-date=NULL;q-next=NULL;s=p-next;m=q;while(s)l=new LNode;l-date=s-date;l-next=NULL;s=s-next;m-next=l;m=l; s=h-next;while (s)i=s-date;j=Locate(p,i);if(j=0)l=new LNode;l-date=s-date;l-next=NULL;m-nex

9、t=l;m=l;s=s-next;void jiao(link &p,link &h,link &q) /求交集link l,s,t,m;int j=0;Elem i=0;q=new LNode;q-date=NULL;q-next=NULL;m=q;s=h-next;while (s)i=s-date;j=Locate(p,i);if(j=1)l=new LNode;l-date=s-date;l-next=NULL;m-next=l;m=l;s=s-next;void cha(link &p,link &h,link &q) /求差集link l,s,t,m;int j=0;Elem i=

10、0;q=new LNode;q-date=NULL;q-next=NULL;m=q;s=p-next;while (s)i=s-date;j=Locate(h,i);if(j=0)l=new LNode;l-date=s-date;l-next=NULL;m-next=l; m=l;s=s-next;void shengcheng(link &p,link &h,link &q) int i,j=0;Elem e;for(i=0;idate=NULL;p-next=NULL;h=p;q=p;i+;elsee=rand()%50+1;j=Locate(p,e);if(j=0)LInsert(p,

11、e);i+;运行结果:4. void bing(link &p,link &h,link &q) /并集link l,s,m;int j=0,i=0;q=new LNode;q-date=NULL;q-next=NULL;s=p-next;m=q;while(s)l=new LNode;l-date=s-date;l-next=NULL;s=s-next;m-next=l;m=l;s=h-next;while (s)i=s-date;j=Locate(p,i);if(j=0)LInsert(q,i);s=s-next;void jiao(link &p,link &h,link &q) /交集link l,s,t,m;int j=0;Elem i=0;q=new LNode;q-date=NULL;q-next=NULL;m=q;s=h-next;while (s)i=s-date;j=Locate(p,i);if(j=1)l=new LNode;l-date=s-date;l-next=NULL;m-next=l;m=l;s=s-next;void cha(link &p,link &h,link

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号