约瑟夫问题(有时也称为约瑟夫斯置换),是一个出现在计算机科学和数学中的问题。在计算机编程的算法中,类似问题又称为约瑟夫环。人们站在一个等待被处决的圈子里。 计数从圆圈中的指定点开始,并沿指定方向围绕圆圈进行。 在跳过指定数量的人之后,执行下一个人。 对剩下的人重复该过程,从下一个人开始,朝同一...
约瑟夫问题是一个著名的问题:假设有N个人围坐在一圈,从第一个人开始报数,每报数到第M个人时,那个人就会被淘汰,最终只剩下一个人,其余的人都会被淘汰。例如,如果N=6且M=5,那么被淘汰的人的编号将是5、4、6、2、3。最后,编号为1的人将留下。假设在圈子里的前K个人是好人,后K个人...
约瑟夫问题是个有名的问题:N个人围成一圈,从第一个开始报数,第M个将被杀掉,最后剩下一个,其余人都将被杀掉。例如N=6,M=5,被杀掉的人的序号为5,4,6,2,3。最后剩下1号。假定在圈子里前K个为好人,后K个为坏人,你的任务是确定这样的最少M,使得所有的坏人在第一个好人之前被...
约瑟夫环是一个数学的应用问题:已知n个人(以编号1,2,3...n分别表示)围坐在一张圆桌周围。从编号为k的人开始报数,数到m的那个人出列;他的下一个人又从1开始报数,数到m的那个人又出列;依此规律重复下去,直到圆桌周围的人全部出列。这个就是约瑟夫环问题的实际场景,有一种是要通过输入n...
这个故事被后人称为“约瑟夫问题”,它凝聚了数学思维和历史背景的交融。陷入绝境的山洞 约瑟夫是一位胆识过人的领袖,他曾率领犹太人奋起反抗罗马帝国的残暴统治,英勇地与罗马军队抗争。然而,有一次他率领的犹太士兵在一个要塞内坚守了长达47天,最终因敌众我寡而被迫溃退。约瑟夫本人与数十名士兵被赶至一座山洞,...
什么是约瑟夫环问题?约瑟夫,是一个古犹太人,曾经在一次罗马叛乱中担任将军,后来战败,他和朋友及另外39个人躲在一口井里,但还是被发现了。罗马人表示只要投降就不死,约瑟夫想投降,可是其他人坚决不同意。怎么办呢,他想到一个主意:让41个人围成一个圆圈,从第一个人开始报数,数到3的那个人被旁边的人杀死。这样就...
这是一个古老的传说:有64名战士被敌人俘虏了,敌人命令他们排成一个圆圈,编上号码1,2,3,…,64,敌人把1号杀了,又把3号杀了,他们是隔一个杀一个这样转着圈杀,最后剩下一个人,这个人就是约瑟夫斯,请问约瑟夫斯是多少号?这就是“约瑟夫斯问题”。这个问题是比较容易解答的:...
跟八皇后问题一样,你说可能有八个皇后吗?这些都是想象出来的,给经典的算法套一个经典的背景,这样就不大会忘记,世界叫约瑟夫的人也不在少数吧