500个人站一圈,从第一个开始挨个喊1234567,喊道7的人退出,然后后边的继续喊1234567.问最后剩下的人是哪几个
1. 通過單向鏈表實現
public class TestLink {
public static LinkedList parseList(LinkedList list,int pos) {
while(list.size()>pos-1){
for (int i = 0; i < pos-1; i++) {
list.addLast(list.getFirst());
list.remove(i);
}
list.removeFirst();
System.out.println(list);
}
return list;
}
public static void main(String[] args) {
LinkedList list = new LinkedList();
for (int i = 0; i < 6; i++) {
list.add("" + i);
}
System.out.println(list);
list = parseList(list,3);
System.out.println(list);
}
}
分享到:
相关推荐
在本文中,我们将深入探讨如何使用C++实现双向循环链表。双向循环链表是一种特殊的数据结构,每个节点不仅包含数据,还包含两个指针,分别指向前一个节点和后一个节点,形成一个首尾相接的循环链。这种数据结构在...
本文将深入探讨如何利用单向链表和双向循环链表来构建这样一个系统。我们将讨论标题中的"航班订票系统"、"单向链表"和"双向循环链表"这些核心概念。 首先,我们来看"单向链表"。单向链表是一种线性数据结构,每个...
【循环链表的逆置】是指在数据结构中,对一个单循环链表进行操作,使其元素顺序反转。循环链表是一种特殊的链表,它的最后一个节点指针指向链表的第一个节点,形成一个闭环。逆置操作是将链表中的元素顺序颠倒,原先...
循环链表是一种特殊的链式数据结构,它与普通链表的主要区别在于最后一个元素的指针不是指向NULL,而是指向链表的第一个元素,从而形成一个闭合的环状结构。这种设计使得在遍历链表时可以更加高效,因为它可以从任何...
通过阅读和理解这些代码,你可以学习到如何从零开始构建和操作一个循环链表,以及如何避免使用STL库的情况下进行内存管理。这有助于提高对数据结构和算法的理解,对于提升C++编程能力非常有益。
这是数据结构的课堂上老师要求我们完成的一个程序 程序实现了关于循环链表的建立与显示
例如,在进程管理中,Linux内核使用双向循环链表来管理进程队列,该队列中包含了所有的进程控制块(PCB),通过双向循环链表可以快速地插入、删除和查找进程控制块。 在内存管理中,Linux内核使用双向循环链表来...
根据给定的信息,我们可以总结出以下关于循环链表的相关知识点: ### 循环链表简介 循环链表是一种特殊的线性表,它通过将链表的尾节点指向头节点,形成了一个闭环的数据结构。与普通链表相比,循环链表在处理某些...
循环链表作为一种重要的数据结构,在计算机科学领域尤其是算法设计与数据管理中扮演着关键角色。相较于普通链表,循环链表在末尾节点指向头节点,形成一个闭环,这一特性使其在某些操作上更为便捷,如遍历整个链表、...
在IT领域,数据结构是计算机科学的基础,循环链表作为一种重要的数据结构,广泛应用于各种算法设计和程序实现中。本文将深入探讨用C++实现的循环链表,包括其概念、特点、操作以及如何在实际编程中应用。 循环链表...
设计算法以判断一个带头结点的单循环链表是否满足这样的条件,其中每个节点的元素值与其序号的差的绝对值不大于3.若成立,返回TRUE,否则返回FALSE,任务利用递增有序地单循环链表表示集合,分别求两个链表表示的集合...
循环链表表示队列是指使用带头结点的循环链表来表示队列,并且只设一个指针指向队尾元素结点。在这种表示方法中,不设头指针,而是使用一个指针指向队尾元素结点。这种方法可以更好地实现队列的插入、删除和遍历操作...
单循环链表是一种常见的数据结构,它在计算机科学中被广泛用于存储和处理有序或无序的数据序列。链表与数组不同,不依赖于物理位置的连续性,而是通过节点间的引用连接彼此。本篇文章将深入探讨单循环链表的概念、...
用Java定义一个循环链表,实现链表的基本操作: 初始化*、获取头结点、添加新元素*、删除链表元素 、获取链表元素*、查找链表元素*、更新链表中某个元素、 判断链表是否为空、求链表元素个数、输出链表元素、清空...
循环链表是一种特殊的链表结构,其特点在于链表的最后一个节点的指针域不再指向空,而是指向前一个节点,这样整个链表形成一个闭合的环形结构。在循环链表中,由于没有明显的尾端,因此在进行算法操作时需要特别注意...
通过这次实验,不仅掌握了双向循环链表的使用,还锻炼了网络资源的查找和利用能力,以及与同学的交流讨论,提高了问题解决能力。源代码中包含了链表节点定义、初始化、插入、打印、销毁以及加减法运算的实现,是理解...
### C语言循环链表的简单应用 #### 一、引言 在计算机科学中,链表是一种常用的数据结构,它由一系列节点组成,每个节点包含数据元素和指向链表中下一个节点的指针。循环链表是链表的一种特殊形式,其中最后一个...
本文将深入探讨如何使用C语言实现一个基于循环链表的电话本程序。 首先,我们来理解循环链表的基本概念。循环链表与普通链表的主要区别在于其最后一个节点的指针指向了链表的第一个节点,形成了一个闭合的环。这种...
本文将深入探讨双向循环链表的原理、实现方式以及其在实际应用中的价值。 双向循环链表是一种特殊的链表类型,与普通的单向链表不同,它具有两个指针,一个指向前一个节点,另一个指向后一个节点。这种设计使得在...