java - Java LinkedList 无法直接访问 Node
问题描述
我惊讶地发现 Java 的 LinkedList 无法直接访问 Node。如果我已经在某个地方存储了 Node 的引用并想将其用于 unlink、linkAfter、linkBefore... 为什么要在 O(n) 处再次搜索它?!!这些方法不公开!
解决方案
a 中的节点LinkedList
确实对客户端隐藏,因此您不能“在某处存储节点的引用”。
根据您的实际用例,您可以使用公共节点滚动您自己的链表或切换到不同的集合,例如HashSet
(对于 O(1) 搜索和删除任意元素)。
推荐阅读
- swift - 谷歌驱动器与 iOS 中服务帐户的 Swift 集成
- spring - 嵌套的具体化参数无法创建 ParameterizedTypeReference
- html - 将 div 包裹在引导行内 - 不是网格项?
- java - 无法使用 Web 驱动程序 java 遍历帧
- spring-boot - SpringBoot项目中如何配置persistance.xml文件
- javascript - 将对象内部的文件从 angular2 发送到 Spring Rest
- ios - 单元测试iOS中的子模块静态函数?(斯威夫特 4 - Xcode)
- ios - Swift 中可操作的通知文本覆盖
- docker - 使用 AKS 的虚拟 Kubelet
- javascript - Ionic 3:如何在新通话中运行应用程序 - 广播公司