不带有头结点的循环单链表解决约瑟夫环问题
时间: 2023-06-05 17:48:04 浏览: 177
单链表解决约瑟夫环问题
约瑟夫环问题可以使用不带有头结点的循环单链表来解决。具体方法是先创建一个循环单链表,然后将所有人依次加入到链表中。接着,从链表的头部开始,每隔m个人就将这个人删除,直到链表中只剩下一个人为止。最后剩下的那个人就是幸存者。
需要注意的是,在删除一个人之前,需要先找到这个人的前一个人,以便将其从链表中删除。另外,由于是循环单链表,所以在计算每隔m个人时,需要将当前位置加上m-1,以便找到要删除的人的位置。
阅读全文