问题标签 [linked-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 投票
2 回答
33257 浏览

java - 在 Java 中对 LinkedList 调用 size() 的时间复杂度是多少?

正如标题所问,我想知道 LinkedList 类中的 size() 方法是否需要分摊的 O(1) 时间或 O(n) 时间。

0 投票
5 回答
1667 浏览

linked-list - 双向链表插图

我试图说明一个双向链表问题。这是我最近学习的一个旧测试。

问题如下:

在此代码之后绘制最终链接的内容:

我迷路的地方是最后一行代码。

n1.next.prev = n3.next;

这是解决方案:

http://www.imagechicken.com/viewpic.php?p=1242322384048558300&x=jpg

任何人都可以引导我完成这个或引导我朝着一个好的方向前进吗?

0 投票
2 回答
5989 浏览

java - 有没有办法在Java中复制一个双重LinkedList而不参考?

我正在创建一些 Double 类型的双向链表,无论我如何声明另一个相同类型的链表,它总是引用第一个列表。

如:

在 trainingData 中添加一些内容...

然后在 newData 中更改此分配后我对 trainingData 所做的任何更改。我还尝试在 newData 的构造函数中传递 trainingData 并使用嵌套循环将 trainingData 的数据分配给 newData,但它仍然给我与 newData 引用 trainingData 相同的结果。

0 投票
4 回答
6939 浏览

java - 在 LinkedList 中查找数字的中位数

你如何找到在 Java 中存储为 LinkedList 的数字列表的中位数?我不明白维基百科所指的选择算法。如果你能解释一下,加分。

0 投票
8 回答
24176 浏览

arrays - 用于快速随机访问、搜索、插入和删除的高效数据结构

我正在寻找一种数据结构(或多个结构),它可以让我保留一个有序的整数列表,没有重复,索引和值在同一范围内。

我需要四个主要操作才能高效,按重要性粗略排序:

  1. 从给定索引中获取值
  2. 查找给定值的索引
  3. 在给定索引处插入值
  4. 删除给定索引处的值

使用一个数组,我在 O(1) 处有 1,但 2 是 O(N),插入和删除是昂贵的(我相信也是 O(N))。

链表有 O(1) 的插入和删除(一旦你有了节点),但 1 和 2 是 O(N),因此否定了收益。

我尝试保留两个数组 a[index]=value 和 b[value]=index,它们将 1 和 2 变为 O(1),但将 3 和 4 变为更昂贵的操作。

有没有更适合这个的数据结构?

0 投票
3 回答
2199 浏览

c++ - Qt:QButtonGroup的QList

嘿!我尝试执行以下操作

然后尝试做这样的事情:

代码编译,但在运行时抛出未处理的异常。我究竟做错了什么?有没有更好的方法来创建 QButtonGroup 组?

0 投票
7 回答
3237 浏览

c++ - 从 C++ 队列的中间删除一个节点

我有一个带有 c 样式ctordtor.

当这个 if 语句决定不测试 true 时,我太沮丧了,让我陷入了无限循环。我不明白为什么它永远不会测试为真。

我正在尝试从我的LinkedList.

也许有人可以帮助我?

0 投票
1 回答
1012 浏览

c++ - C+ 中的链表节点

我正在学习一本关于数据结构的书,并在链表示例中编译了他们的节点,我收到了这个错误:

该节点的代码是:

我不熟悉结构,我正在使用 Code::blocks 进行编译。有谁知道出了什么问题?

0 投票
1 回答
2528 浏览

c++ - C ++删除队列中的节点

问题1:删除列表中的节点> 3

描述:

删除 7 个列表中的第 6 个节点会导致仅打印第一个和最后一个节点。

可用节点指针:*next_、*prev_、*data_

删除指定节点的函数在LinkedList.cpp 名称:DeleteNode。

遍历列表打印节点的函数在 main.cpp 名称:PrintAllNodes

可能的解决方案:

遍历打印节点时能够在 main 中访问 Current->prev_。

代码:

main.cpp 中 PrintAllNodes 的代码:

0 投票
6 回答
7133 浏览

java - 如何在java中轻松删除链表中的重复项?

如何在java中轻松删除链表中的重复项?