问题标签 [doubly-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.
linked-list - 单链表和双链表中节点删除的时间复杂度
为什么双向链表中节点删除的时间复杂度(O(1))比单链表中节点删除时间复杂度(O(n))快?
c++ - 双循环链表。新节点未插入。C++
所以这个新节点应该插入到最后一个节点之后。我无法弄清楚为什么没有发生这种情况。注意:该列表在调用此函数之前有多个元素(大约 5 个),因此到目前为止它只适用于这种情况。最后一个节点应该指向顶部节点,top->prev 指针应该指向最后一个节点。我哪里出错了?顺便说一句,我假设它是错误的,因为当调用 print 函数时,最后一个节点永远不会打印
c - 双链表的问题
所以我得到了这个任务来制作一个程序,它允许用户在一个双链表中输入一些整数元素,我必须删除那些可以用它们的数字之和除的那些(余数为 0)。
问题是,在deletedividable(list)之后;函数调用,调用第二个打印列表时没有打印任何内容,我似乎无法找到问题所在,某些指针一定是搞砸了,但我不确定哪些指针。任何帮助将非常感激。
doubly-linked-list - 双向链表,在引擎盖下
假设您有 2 个课程:
你main
创建了一堆节点,他们对自己有所了解,例如他们的名字,然后add(Node*)
调用DLL
.
为了跟踪这些Node
指针,(我认为)DLL
应该维护它们的数组。有没有办法避免它?(或与此相关的任何其他数据结构)
如何DLL
在引擎盖下实现?它使用数组还是其他东西?
java - 双向链表混淆
在我的课堂上,我有一项任务是创建一个 Number 类,该类具有算术运算。(加/减/乘/等)
我对其中一个部分感到困惑——双向链表。规范中唯一讨论它的部分我觉得有点混乱。我不知道我应该存储什么 - 输入的所有数字?它表示高位数字节点的高点......我不知道那是什么意思。另外,我不确定我将如何实现双向链表......只是参考下一个“高位数字”?
还 - 什么是Node
?作业只说我要创建class Number
...但是 Java API 中的节点说它与 HTML 标签有关?我不应该使用Number low, high
???
以下是详细说明双向链表部分的规范部分:
数字将存储在双向链表中(此处不要使用泛型)。每个节点都有一个 int 值字段,该字段将保存一个数字(0 到 9)和两个指针字段 prev 和 next。
high 指向高位数字的节点,low 指向低位数字的节点,digitCount 是存储在列表中的位数,decimalPlaces 是小数位后的位数(节点),负号表示符号。
我不是要求一个确切的解决方案,只是一些指导和理解。我真的很感激给予的任何帮助。
c++ - 双向链表无限循环?
如果我要创建一个节点类,如下所示,并且如果它用于双向链表,它会在解构双向链表时创建一个无限循环吗?或者它会很好地终止吗?
编辑:如果我将代码修改为这样,它会工作吗?
编辑2:或者这会最有效吗?
algorithm - 将已排序的双向链表转换为 BST
如何将排序的双向链表转换为平衡的二叉搜索树。
我正在考虑以与将数组转换为平衡 BST 相同的方式执行此操作。找到中心,然后递归转换DLL的左边部分和右边部分。例如,
1 2 3 4 5
=> 1 2 (3) 4 5
=>
这导致递归 T(n) = 2T(n/2) + O(n)。O(n) 用于寻找中心。因此时间复杂度为 O(nlogn)。我想知道是否有一种算法可以在 O(n) 中执行此操作。
java - 插入双向链表
我在喜欢列表中添加元素时遇到问题
我的问题是当我运行时:
它只显示“2”“显示”方法,只是看不到最后添加的元素。
但是如果我运行:
它将显示两者。它有什么问题?谢谢。
c++ - 双向链表 - 是什么导致我的代码引发编译器错误,我该如何解决?
我一直在研究双向链表代码,每次尝试编译时都无法找到导致错误的原因。抛出的错误是
main.obj:错误 LNK2019:函数 >_main 1>Doubly List.exe 中引用的未解析外部符号“public:__thiscall DoublyList::DoublyList(void)”(??0?$DoublyList@H@@QAE@XZ):致命错误 LNK1120:1 未解决的外部
DoublyList.h -> http://pastebin.com/5wbeKksv
DoublyListNode.h 和 main.cpp -> http://pastebin.com/vVdGpgaW
sorting - 双链表:按升序对节点进行排序
我正在开发一个使用双向链表的程序。我已经获得了插入节点、删除节点、从节点检索值、显示列表、输出列表大小、判断列表是否为空以及删除所有节点的功能。
我遇到的问题是以升序对值进行排序,并找到某个值所在的节点。
我明天要去帮助实验室,我只是想在那之前看看是否有人可以提供帮助。
我不知道如何处理 sort()。我的 find() 有点工作,但是当我要求它找到一个值的节点时,它只返回我输入的值。
编辑: deleteAll() 现在可以正常工作了!
任何帮助,将不胜感激。我知道如果您不想在这两件事上都提供帮助,那么只需获得我即将完成的那一项(find())就太棒了!
谢谢。