约瑟夫问题:编号为1~N的N个人按顺时针方向围坐一圈,每人持有一个密码(正整数),开始任选一个正整数作为报数上限值M,从第1个人按顺时针方向自1开始顺序报数,报到M时停止报数。报M的人出列,将他的密码作为新的M值,从他顺时针方向上的下一个人开始从1报数,如此下去,直至所有人全部出列为止。解析:显然当...
分类:
其他好文 时间:
2015-12-25 19:04:29
阅读次数:
133
小猪的数据结构辅助教程——2.5 经典例子:约瑟夫问题的解决标签(空格分隔): 数据结构约瑟夫问题的解析
关于问题的故事背景就不提了,我们直接说这个问题的内容吧:
一堆人,围成一个圈,然后规定一个数N,然后依次报数,当报数到N,这个人自杀,其他人鼓掌!啪啪啪,
接着又从1开始报数,报到N又自杀…以此类推,直到死剩最后一个人,那么游戏结束!
这就是问题,而我们用计算机模拟...
分类:
其他好文 时间:
2015-12-12 08:20:05
阅读次数:
233
约瑟夫问题:用户输入M,N值,从1至N开始顺序循环数数,每数到M输出该数值,直至全部输出。写出C程序。#include#includetypedef struct ringnode{ int pos; struct ringnode *next;}ring,*Ring;void crea...
分类:
其他好文 时间:
2015-12-05 17:39:56
阅读次数:
145
本想着用php写些数据结构提升一下,写到链的时候看到约瑟夫环问题,尝试用循环链写了一下约瑟夫环:约瑟夫环(约瑟夫问题)是一个数学的应用问题:已知n个人(以编号1,2,3...n分别表示)围坐在一张圆桌周围。从编号为k的人开始报数,数到m的那个人出列;他的下一个人又从1开始报数,数到m的那个人又出列;...
分类:
Web程序 时间:
2015-11-12 11:50:44
阅读次数:
181
//10个小屁孩报数,报到3退出,继续报,选出孩子王
struct?tagKing
{
?int?index;
?tagKing?*?pNext;
};
void?main()
{
?int?n?=?10;
?tagKing?*?pKings?=?new?tagKing[n];
?for?(int?i=0;i...
分类:
其他好文 时间:
2015-10-11 12:59:39
阅读次数:
219
题目说明: 据说著名犹太历史学家 Josephus有过以下的故事:在罗马人占领乔塔帕特后,39个犹太人与Josephus及他的朋友躲到一个洞中,39个犹太人决定宁愿死也不要被敌人抓到,于是决定了一个自杀方式,41个人排成一个圆圈,由第1个人 开始报数,每报数到第3人该人就必须自杀,然后再由下一个重新...
分类:
编程语言 时间:
2015-09-23 14:43:23
阅读次数:
281
约瑟夫问题升级问题编号为1~N的N个人按顺时针方向围坐一圈,每个人持有一个密码(正整数,可以自由输入),开始人选一个正整数作为报数上限值M,从第一个人按顺时针方向自1开始顺序报数,报道M是停止报数。报M的人出列,将他的密码作为新的M值,从他的顺时针方向上的下一个人开始从1报数,如此下去,直至所有人全...
分类:
其他好文 时间:
2015-09-17 21:38:31
阅读次数:
144
利用循环链表模拟约瑟夫问题,把自杀的人的顺序排列出来代码如下: 1 #include 2 #include 3 4 typedef int status; 5 6 typedef struct node 7 { 8 status data; 9 struct node *next...
分类:
其他好文 时间:
2015-09-17 21:25:53
阅读次数:
134
每年六一儿童节,NowCoder都会准备一些小礼物去看望孤儿院的小朋友,今年亦是如此。HF作为NowCoder的资深元老,自然也准备了一些小游戏。其中,有个游戏是这样的:首先,让小朋友们围成一个大圈。然后,他随机指定一个数m,让编号为0的小朋友开始报数。每次喊到m的那个小朋友要出列唱首歌,然后可以在...
分类:
其他好文 时间:
2015-09-07 22:45:49
阅读次数:
192
/** 问题原型*/41个人排成一个圆圈,由第1个人开始报数,每报数到第3人该人就必须自杀,然后再由下一个重新报数,直到所有人都自杀身亡为止。约瑟夫将朋友与自己安排在第16个与第31个位置,于是逃过了这场死亡游戏。/** 问题分析*/这个问题还有一种描述为丢手绢问题,因此代码命名以shoujuan由...
分类:
其他好文 时间:
2015-09-02 00:36:04
阅读次数:
273