严蔚敏数据结构实验报告

严蔚敏数据结构实验报告

ID:29982196

大小:19.09 KB

页数:12页

时间:2018-12-25

严蔚敏数据结构实验报告_第1页
严蔚敏数据结构实验报告_第2页
严蔚敏数据结构实验报告_第3页
严蔚敏数据结构实验报告_第4页
严蔚敏数据结构实验报告_第5页
资源描述:

《严蔚敏数据结构实验报告》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

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:实验收获及总结  通过本次约瑟夫环问题的实验,深入理解了链表的

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。