约瑟夫问题实验报告
38页1、约瑟夫问题实验报告篇一:约瑟夫问题数据结构实验报告 中南民族大学管理学院 学生实验报告 实验项目: 约瑟夫问题 课程名称: 数据结构 年级: 专业:信息管理与信息系统 指导教师:实验地点:管理学院综合实验室 完成日期: 小组成员: 学年度第一、实验目的 (1)掌握线性表表示和实现; (2)学会定义抽象数据类型; (3)学会分析问题,设计适当的解决方案; 二、实验内容 编号为 1,2,n 的 n 个人按顺时针方向围坐一圈,每人 持有一个密码(正整数)。一开始任选一个正整数作为报数上限值 m,从 第一个人开始按顺时针方向自 1 开始顺序报数,报到 m 时停止报数。报 m 的人出列,将他的密码作为新的 m 值,从他在顺时针方向上的下一个人开 始重新从 1 报数,如此下去,直至所有人全部出列为止。试设计一个程序 求出出列顺序。 利用单向循环链表存储结构模拟此过程,按照出列的顺序 印出各人的编号。 m 的初值为 20;密码:3,1,7,2,4,8,4(正确的结 果应为 6,1,4,7,2,3,5)。 三、实验步骤 (一) 需求分析 对于这个程序来说,首先要确定构造链表时所用的插入方法。当数到m
2、时一个人就出列,也即删除这个节点,同时建立这个节点的前节点与后节点 的联系。由于是循环计数,所以才采用循环列表这个线性表方式。 程序存储结构 利用单循环链表存储结构存储约瑟夫数据(即n个人的编 码等),模拟约瑟夫的显示过程,按照出列的顺序显示个人的标号。编号为 1,2,?,n 的 n 个人按顺时针方向围坐一圈,每人持有一个密码(正整数)。 一开始任选一个正整数作为报数上限值 m,从第一个人开始按顺时针方向自 1 开始顺序报数,报到 m 时停止报数。报 m 的人出列,将他的密码作为新 的 m 值,从他在顺时针方向上的下一个人开始重新从 1 报数,如此下去, 直至所有人全部出列为止。试设计一个程序求出出列顺序。基本要求是利用 单向循环链表存储结构模拟此过程,按照出列的顺序印出各人的编号。 程序执行的命令(1)构造单向循环链表。 (2)按照出列的顺序引出各个人的标号。 测试数据 m 的初值为 20;密码:3,1,7,2,4,8,4(正确的结果 应为 6,1,4,7,2,3,5) (1)、插入:在把元素插入到循环链表中时,由于是采用的头插法,所以我 保留了front头结点。在每加入一个节点时,
3、都会直接连接在front后面, 从而保证一开始就赋值的rear尾节点不用修改。 伪代码阐释如下: 1)、在堆中建立新节点:NodeT *s=new NodeT;2)、将ai写入到新节点的数据域:s-data=ai; 3)、修改新节点的指针域:s-next=front-next; 4)、修改头结点的指针域,将新节点加入到链表中:front-next=s; 时间复杂度为:1; (2)、删除:首先通过p指针查找到所要删除的节点的前一个节点,继而通 过q=p-next简单地删除掉。假设所要查找的为第i个元素。 伪代码阐释如下: 1)、在堆中建立新节点p,通过循环查找到i-1,将此节点的地址赋给p。 2)、设q指向第i个节点:若p=rear,则q=front-next; 否则,q=p-next; 3)、摘链,即将q从链表中摘除:若q=rear,则p-next=front-next;否 则,则p-next=q-next. 4)、保存q元素的数据:x=q-data; 5)、释放q元素:delete q; 时间复杂度为:1; (3)、约瑟夫问题的基本思想:在这个循环查找问题中,通过循环链表实现 了循环
《约瑟夫问题实验报告》由会员re****.1分享,可在线阅读,更多相关《约瑟夫问题实验报告》请在金锄头文库上搜索。
2017年全员培训时间安排表
期中总结会上的德育讲话稿精彩(2篇).doc
零件图视图选择
WI-L28 Rev.0 物流 加工贸易 保税业务 作业指导书Processing Trade Bonded Business Working Instruction
事业单位考勤签到表
医院信息系统安全措施及应急预案
廉租房买卖合同
十堰关于成立特种纸公司可行性报告_模板
2006年高考各科考试大纲修订说明110100000
英语培训学校薪酬绩效手册(完整版)资料
系统集成管理工程师考试大纲
科技发展利大于弊
财务科工作心得范文五篇
描写人物的好词、好句、好段
预应力管桩施工组织方案设计
护理应急预案演练记录
电力术语英文词典3(电气部分)
关于行政审批工作有关情况2
东港实验学校清明节活动方案
视频监控设备项目经济效益及投资价值分析(模板)
2023-01-19 7页
2023-12-05 12页
2023-08-12 6页
2024-01-03 3页
2022-07-16 16页
2022-10-14 8页
2023-09-20 4页
2022-07-22 10页
2024-02-29 3页
2022-09-22 10页