问题标签 [circular-list]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
107 浏览

java - 使用java在循环双向链表的头部插入一个节点

我想创建一种方法,使用 java 在循环双向链表的头部插入一个节点。我该怎么做?

我知道第一个用新节点替换它的节点,最后一个节点也是如此。当列表是循环的时,我不知道如何知道“最后一个”?

0 投票
4 回答
117 浏览

c - 循环链表

我的循环链表代码适用于添加、搜索、计数、查看,但是一旦我从列表中删除一个条目,它就会与列表中的所有其他数据混淆。我知道错误在DeleteNode函数中,但无法弄清楚。请帮我解决这个问题 - 谢谢。

0 投票
3 回答
107 浏览

c++ - 删除循环链表中的项目

我的程序应该做 3 个操作:

  1. 插入
  2. 删除
  3. 显示在循环链表上。

我的问题在于删除功能。这是代码:

删除功能以这种方式工作:用户输入一个号码,程序搜索该号码,当它找到该号码时,将其从列表中删除。

现在的问题是,当用户输入列表中不存在的数字时,会出现“应用程序崩溃窗口”(我的意思是这个窗口:程序没有响应),而我已经为这种情况提供了错误消息(“您的号码不在列表中”)!!

你能告诉我问题是什么吗?

0 投票
1 回答
75 浏览

c - 循环队列 DLL 无法按预期进行推送和显示

我将我的文件转换为项目文件,现在它不像以前那样工作了。

我正在使用循环队列 DLL 来插入、删除和显示值。

我的问题是,如果我分别输入 ff 数字:5,4,3我得到3, 2810, 0。这是非常非常错误的。我已经为此工作了几个小时,我在想将它转换为项目文件可能会导致我的一些变量没有被正确声明或其他什么。proj文件也是一个要求。

这是我的代码:

标题:

主要的:

创造:

推:

展示:

0 投票
4 回答
615 浏览

scala - 用 Scala 定义循环列表的最佳方法是什么?

这是我的尝试:

当试图用 x 做任何事情时,问题就来了;导致 x 被评估以循环评估开始,通过 x、y、z 并以堆栈溢出结束。有没有办法指定 val a 应该延迟计算?

0 投票
7 回答
4782 浏览

python - 如何使用python删除循环列表的元素,直到只剩下一个元素?

我将如何遍历 1-100 的列表,从第一个元素开始删除所有其他元素,然后重复该步骤,直到列表中只剩下一个元素。我必须使用循环链表,还是只使用循环和条件语句来完成?

0 投票
2 回答
66 浏览

algorithm - 循环列表总是可以通过适当的列表(以 nil 结尾)结合循环来模拟吗?

我有直觉,可以通过适当的列表(带有结束标记)结合循环遍历整个列表来模拟循环列表。我的感觉是循环列表更干净,因为控制逻辑(循环)内置在结构中。另一方面,将控制逻辑与结构分开似乎是一种关注点分离,在某些情况下可能会受到青睐。我不太确定的是在什么情况下每个都是有用的。我也不太确定模拟是否总是可行的。如果不是,你能举个反例吗?

0 投票
2 回答
2438 浏览

java - 没有头或尾的Java循环链表?

我的书在一页上只提到了循环链表,并说您可以通过使单链表或双链表的头部和尾部相互链接来创建它们。但是编程练习说:

“循环链表不需要头部或尾部。相反,您只需要对当前节点的引用,即迭代器返回的 nextNode。实现这样一个类。对于非空列表,Iterator.hasNext方法将始终返回 true。”

我不确定我应该如何处理这个问题。

0 投票
1 回答
8301 浏览

java - 循环链表的Java迭代器

我创建了一个 CircularLinkedList 类,而不是使用 util LinkedList 类。该问题基于约瑟夫斯问题,指出对于 20 人的圈子,每 12 人将被杀死,直到确定幸存者将站在哪个位置(使用迭代器)。我对如何使用 Iterator 来解决这个问题感到困惑,因为我使用的是我自己的类而不是 LinkedList,它已经有一个 iterator() 方法,因此我可以像这样声明一个 Iterator:

我不知道如何编写自己的 Iterator 方法,而且我觉得我必须过度思考这个问题。任何帮助表示赞赏!如果可以清除我忘记提及的任何内容,我可以发布我的代码

我仍然坚持这一点,所以我想我会发布我的代码,看看是否有人可以提供帮助。很多,所以我很抱歉。

Itr 类(迭代器)

约瑟夫级

CircularLinkedList 类

我从在线 Itr 类中的 next() 方法中得到 NullPointerException

我在 CircularLinkedList 类中做错了什么,因为它实际上不是循环的,还是我的驱动程序/Itr 类有问题?在这一点上,我有点迷路了。任何帮助表示赞赏。

0 投票
1 回答
1017 浏览

c++ - 侵入式、循环、无分支、双向链表——如何有列表来识别节点成员字段?

代码发布在这里:https ://ideone.com/ul2PiS

我想要做的是允许用户将列表节点指定为将添加到列表中的类的成员字段。目前,这是通过使用 offsetof() 的宏来完成的,这意味着成员节点必须是公共的。理想情况下,我希望能够以某种方式指定,作为每个linked_list 声明的一部分,作为模板参数,哪个成员字段应该用作节点。boost::intrusive似乎可以管理它,但我不太明白他们是如何做到的。

要求列表函数是无分支的(没有指针比较,平台具有非常非常慢的分支机制)并且列表是侵入性的并且允许对象同时成为多个列表的成员。

客户端代码如下所示:

[编辑] 好的,使用指向成员模板参数的指针会更好:

因此您可以声明如下列表:

所以我们(大部分)摆脱了丑陋的声明语法,尽管我仍然找不到让它们成为私有的方法。看起来 boost::intrusive 也要求它们公开。