问题描述:
41个人排成一个圆圈,有第1个开始报数,每报数到第3个人该人就必须自杀,然后再由下一个人重新报数,直到所有人都自杀身亡为止。
分析图:如图,每当p移动两个位置时就停下来删除第三个结点;然后再从第四个结点继续开始报数,p移动两个位置后就删除第三个报数的结点,以此类推…….
public class JosephusList {
class Node{
int data;
Node next;
}
Node head;
Node rear;
/**直接在构造函数中初始化循环单链表*/
public JosephusList() {
head = new Node();
head.data = 0;
head.next = he