单向环形链表约瑟夫问题
什么是单向环形链表?
链表收尾逻辑相连,且只能单向遍历,区别于双向
什么是约瑟夫问题?
一开始是一个故事可以百度一下。
Josephu 问题:
设编号为 1,2,… n 的 n 个人围坐一圈,约定编号k(1<=k<=n)的人从 1 开始报数,数到 m 的那个人出列,它的下一位又从 1 开始报数,数到 m 的那个人又出列,依次类推,直到所有人出列为止,由此产生一个出队编号的序列。
提示:
用一个不带头结点的循环链表来处理 Josephu 问题:先构成一个有 n 个结点的单循环链表,然后由 k 结点起从 1 开始计数,计到 m 时,对应结点从链表中删除,然后再从被删除结点的下一个结点又从 1 开始计数,直到最后一个结点从链表中删除算法结束。