欢迎来到毕设资料网! | 帮助中心 毕设资料交流与分享平台
毕设资料网
全部分类
  • 毕业设计>
  • 毕业论文>
  • 外文翻译>
  • 课程设计>
  • 实习报告>
  • 相关资料>
  • ImageVerifierCode 换一换
    首页 毕设资料网 > 资源分类 > DOC文档下载
    分享到微信 分享到微博 分享到QQ空间

    数据结构课程设计报告----约瑟夫环

    • 资源ID:1451717       资源大小:571.50KB        全文页数:21页
    • 资源格式: DOC        下载积分:100金币
    快捷下载 游客一键下载
    账号登录下载
    三方登录下载: QQ登录
    下载资源需要100金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。

    数据结构课程设计报告----约瑟夫环

    1、 课 程 设 计 课程名称: 程序设计、数据结构 课题名称: 约瑟夫环 班 级: 学 号: 姓 名: 指导教师: 2011 年 12 月 一、问题描述一、问题描述 约瑟夫环问题描述的是:设编号为 1,2,n 的 n(n0)个人按顺时针 方向围坐一圈,每个人持有一正整数密码。开始时选择一个正整数作为报数上限 m,从第一个人开始顺时针方向自 1 起顺序报数,报到 m 时停止报数,报 m 的 人出圈,将他的密码作为新的 m值,从他在顺时针方向上的下一个人起重新从 1 报数。如此下去,直到所有人都出圈为止。令 n最大值为 100。要求设计一个程 序模拟此过程,求出出圈的编号序列。如下图分析: 1 2

    2、3 4 5 6 7 8 9 0 这是第一个人,他的 密码是“1” ,个他输 一个 m 值, 如果 m=3, 则从他开始向下走 3 个 这就是第二步的位置, 这时他的密码作为新 的 m 值,即 m=4,同时 得到的第一个密码为 4;4 号出去向下走 4, 到 9 这儿; (这这一步 完 了 剩 余 的 为 : 1,2,3,5,6, ,7,8,9,0, ) 这就是第三步的位置, 这 时他的密码作为新的 m 值,即 m=9,同时得到 的第二个密码为 9;9 号 出去向下走9, 到0这儿; 继续走就行了 (这儿剩余 的就是:1,2,3,5, 6,7,8,0) 图 1 约瑟夫环问图解 1 二、逻辑设计二

    3、、逻辑设计 1、循环链表抽象数据类型定义 typedef struct LNode/定义单循环链表中节点的结构 int num;/编号 int pwd;/password struct LNode *next;/指向下一结点的指针 LNode; 2、本程序包含一下几个模块 (1)构造结点模块 LNode *createNode(int m_num,int m_pwd) 3 2 7 1 4 8 4 约瑟夫环原理约瑟夫环原理演示演示图图 1 2 3 4 5 6 7 第二部: 第一次停下的位置,此 时6 号出列, 并将他的值作为新 的 m 值,即:新的 m=8;从 7 好开始继续向下走8 次, 到1

    4、 号 的位置 最后排序后的密码序列: (本图只演示前两步) 8 第三步: 第二次,1 号出列 第四步:第三次, 4 号出列 3 第一步:给第一个人 赋初始密码为:20 则 从它开始向下走 20 次,到 6 号位置 2 4 1 7 4 6 1 4 7 2 3 5 图 2 约瑟夫环原理演示图 2 LNode *p; p=(LNode *)malloc(sizeof(LNode);/生成一个结点 p-num=m_num;/把实参赋给相应的数据域 p-pwd=m_pwd; p-next=NULL;/指针域为空 return p; (2)创建链表模块 void createList(LNode *ppHead,int n) (3)出队处理模块 void jose(LNode *ppHead,int m_pwd) (4)约瑟夫环说明输出模块 void instruction() (5)菜单模块 void menu() (6)主函数模块 int mai


    注意事项

    本文(数据结构课程设计报告----约瑟夫环)为本站会员(毕***)主动上传,毕设资料网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请联系网站客服QQ:540560583,我们立即给予删除!




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们
    本站所有资料均属于原创者所有,仅提供参考和学习交流之用,请勿用做其他用途,转载必究!如有侵犯您的权利请联系本站,一经查实我们会立即删除相关内容!
    copyright@ 2008-2025 毕设资料网所有
    联系QQ:540560583