欢迎来到天天文库
浏览记录
ID:29982196
大小:19.09 KB
页数:12页
时间:2018-12-25
《严蔚敏数据结构实验报告》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、为了适应公司新战略的发展,保障停车场安保新项目的正常、顺利开展,特制定安保从业人员的业务技能及个人素质的培训计划严蔚敏数据结构实验报告 上机报告 上机项目名称:________________________________ 班 学 姓级号名:________________________________:________________________________:________________________________ 上机时间:________________________________ 成绩
2、:________________________________ 指导教师:________________________________ 上机地点:_____________________________哈尔滨工程大学教务处制 数据结构 实验报告(第二章) 实验类型:综合性实验 实验名称:约瑟夫环问题 1:问题描述目的-通过该培训员工可对保安行业有初步了解,并感受到安保行业的发展的巨大潜力,可提升其的专业水平,并确保其在这个行业的安全感。为了适应公司新战略的发展,保障停车场安保新项目的正常、顺利开展,特制定安
3、保从业人员的业务技能及个人素质的培训计划 设有编号为1,2,…,n的n个人围成一个圈,每个人持有一个密码m。从第一个人开始报数,报到m时停止报数,报m的人出圈,再从他的下一个人起重新报数,报到m时停止报数,报m的出圈,……,如此下去,直到所有人全部出圈为止。当任意给定n和m后,设计算法求n个人出圈的次序。2:基本要求 ?建立模型,确定存储结构。 ?对任意n个人,密码为m,实现约瑟夫环问题。 ?出圈的顺序可以依次输出,也可以用一个数组存储。 3:实验环境 本实验运行于windowsXP操作系统下的MicrosoftVis
4、ualC++软件环境,测试通过。 4:数据结构设计 首先,设计实现约瑟夫环问题的存储结构。由于约瑟夫环问题本身具有循环性质,考虑采用循环链表,为了统一对表中任意结点的操作,循环链表不带头结点。将循环链表的结点定义为如下结构类型: typedefstructNode { intdata; Node*next; }Node,*Linklist; 其次,建立一个不带头结点的循环链表并由头指针head指示。LinkListCreateList(intn)//创建循环链表并返回头结点指针目的-通过该培训员工可对保安行业有初步
5、了解,并感受到安保行业的发展的巨大潜力,可提升其的专业水平,并确保其在这个行业的安全感。为了适应公司新战略的发展,保障停车场安保新项目的正常、顺利开展,特制定安保从业人员的业务技能及个人素质的培训计划 { LinkListhead,p1,p2; inti; for(i=1;inext=p1; p1->data=i; p2=p1; } p1->next=head; returnhead; } 最后,设计约瑟夫环问题的算法。 5:算法设计(伪代码表示) Linklistp,p2; p=CreateLinli
6、st(n);//p为循环链表头指针 intm;//m为密码 intj=1; p2=p; if(m==1)//如果密码为1,原样输出 { for(i=1;inext)!=p) {目的-通过该培训员工可对保安行业有初步了解,并感受到安保行业的发展的巨大潜力,可提升其的专业水平,并确保其在这个行业的安全感。为了适应公司新战略的发展,保障停车场安保新项目的正常、顺利开展,特制定安保从业人员的业务技能及个人素质的培训计划 }p=p->next;if(++j==m){j=1;p=p->next;s=Delete(p2);pri
7、ntf("%d",s);}p2=p;}printf("%d",p->data); 6:运行测试 1:输入:n=10m=3 输出:出列顺序为: 2:容错检验 输入:n=0 输出:输入错误,请重新输入! 输入:n=10m=0 输出:输入错误,请重新输入! 7:其它思考 1:采用顺序存储结构如何实现约瑟夫环问题? 答:如果采用顺序存储结构,则应先构造一个顺序表存放人的编号,接着用密码对剩余总人数求余,得到的结果为首先出列的人,然后删除该点,并让顺序表后的数据前移,接着对剩余人数求余,依次循环就能得到最终的出列顺
8、序。2:如果每个人持有的密码不同,应如何实现约瑟夫环问题? 答:构造一个数组存放所有密码,每找到一个人,删除该结点并将访问密码数组的下一个元素,依次循环就能得到最终的出列顺序。 8:实验收获及总结 通过本次约瑟夫环问题的实验,深入理解了链表的
此文档下载收益归作者所有