约瑟夫环 约瑟夫游戏的大意:30个游客同乘一条船,因为严重超载, 加上风浪大作,危险万分。因此船长告诉乘客,只有将全船 一半的旅客投入海中,其余人才能幸免于难。无奈,大家只 得同意这种办法,并议定30 个人围成一圈,由第一个人数起,依次报数,数到第9人,便把他投入大海中,然后再从 他的下一个人数起, ...
分类:
其他好文 时间:
2020-06-13 10:57:29
阅读次数:
73
什么是约瑟夫环问题 已知 n 个人(以编号1,2,3 … n 分别表示)围成一圈。从编号为 1 的人开始报数,数到 m 的那个人出列;他的下一个人又从 1 开始报数,数到 m 的那个人又出列;依此规律重复下去,直到最后剩下一个人。要求找出最后出列的人的编号 可能有些同学看到的不是从编号为 1 的人开 ...
分类:
其他好文 时间:
2020-05-30 10:24:11
阅读次数:
60
##题目描述: 据说著名犹太历史学家 Josephus(约瑟夫)有过以下的故事:在罗马人占领乔塔帕特后, 39 个犹太人与 Josephus 及他的朋友躲到一个洞中,39 个犹太人决定宁愿死也不要被敌人抓到,于是决定了一个自杀方式,41 个人排成一个圆圈,由第 1 个人开始报数,报数每报到第 3 个 ...
分类:
其他好文 时间:
2020-05-26 22:10:41
阅读次数:
94
今日一言:谢谢你,成为我前进的理由。——《言叶之庭》 数据结构 —— 约瑟夫环 这是用链表实现的,约瑟夫环的规则是:总数为N的同学围成一个圆环,并将这些同学从1开始编号,游戏开始时,约定好一个数字K,从1号同学开始轮着叫号,当叫到K号时,该同学淘汰,下一位同学从1开始重新叫号,只要叫到K号即淘汰,留 ...
分类:
其他好文 时间:
2020-05-24 23:59:31
阅读次数:
110
圆圈中最后剩下的数字 0,1,,n-1这n个数字排成一个圆圈,从数字0开始,每次从这个圆圈里删除第m个数字。求出这个圆圈里剩下的最后一个数字。 例如,0、1、2、3、4这5个数字组成一个圆圈,从数字0开始每次删除第3个数字,则删除的前4个数字依次是2、0、4、1,因此最后剩下的数字是3。示例 1:输 ...
分类:
其他好文 时间:
2020-05-24 18:03:44
阅读次数:
51
约瑟夫问题:N个人围成一圈,从约定编号为K的人开始报数,第M个将被杀掉,依次类推,最后剩下一个,其余人都将被杀掉。 直接上图展示,初始化状态: 假设n=6,总共有6个人,k=1,从第一个人开始报数,m=5,每次数五个。 1 package linkedlist; 2 3 public class j ...
分类:
其他好文 时间:
2020-05-14 13:48:47
阅读次数:
70
在古罗马时期,犹太人背叛了罗马人,落到困境,约瑟夫和同行的一共39个犹太人只能够自杀殉国,但是犹太教义规定不能自杀,因此只能够让别人将自己杀害。他们所有39个人坐成一圈,报数1—7,报到7则由身旁的人将自己杀死。结果约瑟夫灵机一动,给自己安排了一个位置,最后活了下来,那么约瑟夫给自己安排的是哪一个位 ...
分类:
编程语言 时间:
2020-05-08 16:27:14
阅读次数:
108
循环链表 单链表的局限性:如果不从头结点出发,就无法访问的全部节点。 循环链表定义:将单链表终端结点的指针由空指针改为指向头结点;使单链表形成一个环,称单循环链表,简称循环链表 注:循环链表不一定有头结点。 ...
分类:
其他好文 时间:
2020-05-03 00:42:24
阅读次数:
58
1 #include <iostream> 2 #include <cstdio> 3 #include <cstring> 4 5 using namespace std; 6 7 8 //解决约瑟夫环问题 9 //分别使用数组和链表 10 //问题描述:n只猴子围成一个圈选大王,从1开始数m个数 ...
分类:
其他好文 时间:
2020-05-01 12:53:52
阅读次数:
43
约瑟夫问题问题来历 据说著名犹太历史学家 Josephus有过以下的故事:在罗马人占领乔塔帕特后,39 个犹太人与Josephus及他的朋友躲到一个洞中,39个犹太人决定宁愿死也不要被敌人抓到,于是决定了一个自杀方式,41个人排成一个圆圈,由第1个人开始报数,每报数到第3人该人就必须自杀,然后再由下 ...
分类:
编程语言 时间:
2020-04-29 00:38:09
阅读次数:
76