约瑟夫环数据结构实验报告_约瑟夫环_要闻速递

来源:互联网     时间:2023-06-09 22:55:38


(资料图片仅供参考)

1、约瑟夫环(约瑟夫问题)是一个非常经典的数学应用问题:简单来说,已知n个人(用数字1,2,3表示.n)正围坐在圆桌旁。从编号为k的人开始倒数,

2、数到m的人从队列中出来;继续,他的下一个人又从1开始数,数到m的人又出局了;重复这个规则,直到圆桌周围的人全部出列!

3、约瑟夫斯有一个故事:39个犹太人与约瑟夫斯和他的朋友藏在一个山洞里,39个犹太人决定去死,而不是被敌人抓住。于是决定了自杀模式,41个人排成一圈,第一个人开始报数。

4、每次你向第三个人汇报,那个人一定会自杀。然后下一个人再数,直到所有人都自杀。然而,约瑟夫斯和他的朋友们不想服从。约瑟夫斯要求他的朋友先假装服从,他把他的朋友和他自己安排在16号和31号位置。

5、所以他逃脱了死亡的游戏。

6、这是一个典型的循环链表主题。我们需要创建一个循环链表,按照游戏规则依次删除节点。在链表为空之前,打印元素顺序为out顺序!

7、下面是用C语言写的约瑟夫环问题程序,依次创建链表,添加数据,删除节点操作,直到链表为空。源代码如下:

8、我们可以任意设置人数n和区间m:下图是一个例子的运行结果,模拟了经典的约瑟夫问题,41人,区间3人,最后在16日和31日逃脱!

9、对于初学者来说,这个主题可以很好地帮助他们理解链表、指针和循环的概念。

以上就是约瑟夫环这篇文章的一些介绍,希望对大家有所帮助。

关键词:

精彩放送