【发布时间】:2012-08-17 10:50:07
【问题描述】:
由于 LinkedList 在内存开销方面是一场噩梦,而且在迭代元素时速度也较慢,所以我希望有类似 int poiter 数据结构的东西。
所以我有一个整数列表,我通过在开头-中间插入元素来形成它。列表准备好后,我从左侧开始逐一迭代。这是我的问题约束。
【问题讨论】:
-
Insert in middle is O(1) with
LinkedListand O(n) withArrayListor "int pointer"...我不认为你有其他选择,除非你的问题有一些您可以使用的附加信息。 -
只是出于好奇...您所指的“内存开销方面的噩梦”是什么?每个列表节点存储一个对其值对象的引用,一个对前一个节点的引用和一个对下一个节点的引用。这似乎是链表工作的最低要求(好吧,如果您只需要使用链表进行前向迭代,则可以摆脱“以前的”引用)。但是你指的内存开销是什么?仅仅是有一个“以前的”参考吗?
标签: java pointers insert linked-list